{ "204": { "host": "https:\/\/abc.com\/production-source\/ChangSha\/2013\/12\/02\/0\/0\/A\/Content\/", "timestamp": 1385909880, "cover": ["17\/Pg017.png", "18\/Pg018.png", "1\/Pg001.png", "2\/Pg002.png"], "year": "2013", "month": "12", "day": "02", "issue": "2013-12-02", "id": "204" }, "203": { "host": "https:\/\/abc.com\/production-source\/ChangSha\/2013\/12\/01\/0\/0\/A\/Content\/", "timestamp": 1385806902, "cover": ["1\/Pg001.png", "2\/Pg002.png", "3\/Pg003.png", "4\/Pg004.png"], "year": "2013", "month": "12", "day": "01", "issue": "2013-12-01", "id": "203" }, "202": { "host": "https:\/\/abc.com\/production-source\/ChangSha\/2013\/11\/30\/0\/0\/A\/Content\/", "timestamp": 1385720451, "cover": ["1\/Pg001.png", "2\/Pg002.png", "3\/Pg003.png", "4\/Pg004.png"], "year": "2013", "month": "11", "day": "30", "issue": "2013-11-30", "id": "202" } }
上面的示例json数组,如何获取204、203和202?谢谢
我试过了:
JSONArray issueArray = new JSONArray(jsonContent); for (int j = 0; j < issueArray.length(); j++) { JSONObject issue = issueArray.getJSONObject(j); String _pubKey = issue.getString(0); }
上面的示例json数组,如何获取204、203和202?
不,当前的String JSONObject代替JSONArray。您应该使用JSONObject获取Iterator 。keys()如果内部JSONObject键动态为:
JSONObject
JSONArray
JSONObject issueObj = new JSONObject(jsonContent); Iterator iterator = issueObj.keys(); while(iterator.hasNext()){ String key = (String)iterator.next(); JSONObject issue = issueObj.getJSONObject(key); // get id from issue String _pubKey = issue.optString("id"); }