0

我一直在为我的 android 应用程序从 Flickr api 中提取图像 url。

更具体地说,我需要解析以下 JSON的第一个owner和第一个字段id

http://pastebin.com/NVKXdELx

因此,我尝试了

JSONObject json = new JSONObject(jsonString);
JSONObject photos = json.getJSONObject("photos");
JSONObject photo = photos.getJSONObject("photo");
String picOwner = photo.getString("owner");
String picID = photo.getString("id");

对我来说,逻辑是有道理的(抓取行照片,然后抓取行照片,然后将所有者字段提取为字符串)。但是,会引发错误

JSONObject photo = photos.getJSONObject("photo");

我忽略了什么吗?

注意:我正在寻找的最终值是

    "id": "8637130199",
    "owner": "93693022@N07"
4

1 回答 1

4

标识的元素"photo"是一个JSON Array,需要使用JSONArray

JSONObject json = new JSONObject(jsonString);
JSONObject photos = json.getJSONObject("photos");
JSONArray photo = photos.getJSONArray("photo");
if (photo.length() > 0) {
    JSONObject first = photo.getJSONObject(0);
    String picOwner = first.getString("owner");
    String picID = first.getString("id");
}
于 2013-10-06T04:49:49.877 回答