0

我正在尝试从这个 JSON 文件中获取数据,如下所示:http ://api.worldbank.org/countries/ir?format=json

如果您通过 JSON 编辑器(像这样)查看文件,您会看到数组中有数组和对象。我只能进入第一级。但是如何进入更深层次。这是我到目前为止所做的:

            JSONArray array = json.getJSONArray("data");
            JSONObject c = array.getJSONObject(0);

            JSONArray array2 = array.getJSONArray(1);
            JSONObject c2 = array2.getJSONObject(0);



            //Storing JSON item in a Variable
            String name = c2.getString(NAME);
            String capitalCity = c2.getString(CAPITALCITY);

所以通过这行代码我可以得到国家名称和首都。

但是在同一个数组中还有另一个名为region的对象,它还有另外两个字符串idvalue。如何访问内部区域并获取价值

4

2 回答 2

1

字段region又是一个JSONObject

JSONObject region = c2.getJSONObject("region");
String regionId = region.getString("id");
String regionValue = region.getString("value");
于 2013-11-23T22:35:05.093 回答
1

你可以试试这个:

JSONObject regionJsObj = c2.getJSONObject("region");
String regionId = regionJsObj.getString("id");
String regionValue = regionJsObj.getString("value");

您可以对 jsonObject 内的所有 jsonObjects 执行相同的操作,如“adminregion”或“incomeLevel”或“lendingType”等等......

于 2013-11-23T22:35:30.687 回答