在android中的JSON数组中解析表嵌套表

时间:2015-04-09 06:12:06

标签: android json

我试图从JSON的数据中获取。但我不能。帮助我。

我从服务器获取JSON数组并解析JSON对象,如下所示:

public ArrayList<ArrayList<Object>> parseAllTable(JSONObject object) {
        ArrayList<ArrayList<Object>> arrayList = new ArrayList<ArrayList<Object>>();
        try {
            JSONArray jsonArray = object.getJSONArray("Value").getJSONArray(1);

            JSONObject jsonObj = null;
            for (int i = 0; i < jsonArray.length(); i++) {
                jsonObj = jsonArray.getJSONObject(i);
                Iterator<String> iter = jsonObj.keys();
                ArrayList<Object> tmpList = new ArrayList<Object>();
                while(iter.hasNext())
                    tmpList.add(iter.next());
                arrayList.add(tmpList);
            }
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            Log.d("JSONParser => parseAllTable", e.getMessage());
        }
        return arrayList;
    }

与JSON数据类似:

{
  "Successful": true,
  "Value": {
    "CoolerType": [
      {
        "CoolerTypeId": 1,
        "CoolerTypeName": "CVC-360D",
        "description": ""
      },
      {
        "CoolerTypeId": 2,
        "CoolerTypeName": "CVC-360D-2",
        "description": ""
      }
    ],
    "PartsType": [
      {
        "parttypeid": 1,
        "parttypename": "Гэрэл"
      },
      {
        "parttypeid": 2,
        "parttypename": "Гэрэлт самбар"
      }
     ]
  }
}

1 个答案:

答案 0 :(得分:1)

下面:

JSONArray jsonArray = object.getJSONArray("Value").getJSONArray(1);

Value是JSONArray的JSONObject而不是JSONArray。所以从Value获取JSONObject object

JSONArray jsonArray = object.getJSONObject("Value").getJSONArray(1);