如何在android中的一组数组中存储json值

时间:2015-09-09 10:33:47

标签: android json

我有一个像这样的json文件:

http://da.pantoto.org/api/files

我想将这些值存储在稍后要使用的变量中。这些值应存储在一些String数组变量中,如id [],uploadDate [],url []。

我可以使用ListView和ArrayAdapter找到示例。但那不是我真正想要的。任何人都可以帮忙??

2 个答案:

答案 0 :(得分:1)

这只是一个示例,说明如何从JSON获取值。您需要根据需要存储这些值。

JSONObject jsonObject = new JSONObject("your response");
JSONArray filedetails = jsonObject.getJSONArray("files");
    for(int i=0; i<filedetails.size();i++){
       String id = filedetails.get(i).getString("id");
       JSONArray tagsdetails= filedetails.get(i).getJSONArray("tags");
       for(int i=0; i<tagsdetails.size();i++){
            //fetch values in it
        }
    }

答案 1 :(得分:0)

这是一种简单的方法。看我也做了这种字符串数组,后来用

                try {
                    JSONObject jObj = new JSONObject(strDocketListResponse);
                    JSONArray jsonArray = jObj.getJSONArray("GetManifestDocketListResult");
                    for (int i = 0; i < jsonArray.length(); i++) {
                        JSONObject detailsObject = jsonArray.getJSONObject(i);

                        String strDktNo = detailsObject.getString("Docketno");
                        String strDocketDate = detailsObject.getString("DocketDate");
                        String strOrigin = detailsObject.getString("Origin");
                        String strDestination = detailsObject.getString("Destination");

                        String[] strDocketNoDkt = new String[]{strDktNo};
                        String[] strDocketDateDkt = new String[]{strDocketDate};
                        String[] strDocketOriginDkt = new String[]{strOrigin};
                        String[] strDocketDestnDkt = new String[]{strDestination};                            

                        for (int sanjay = 0; sanjay < strDocketNoDkt.length; sanjay++) {
                            ItemCheckList itemCheckList = new ItemCheckList();
                            itemCheckList.setDocket_NO(strDocketNoDkt[sanjay]);
                            itemCheckList.setDocket_Date(strDocketDateDkt[sanjay]);
                            itemCheckList.setDocket_Origin(strDocketOriginDkt[sanjay]);
                            itemCheckList.setDocket_Destination(strDocketDestnDkt[sanjay]);
                            checkLists.add(itemCheckList);
                        }
                        checkAdapter = new ItemCheckAdapter(ActivityManifestEntry.this, checkLists, check_all);
                        manifestListView.setAdapter(checkAdapter);
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                }