我正在用Java为Android开发,并使用HttpUrlConnection连接到API并获得响应。
我得到的响应是包含这样的数组的String:
[{"_id":"1","user":{"_id":"a","displayName":"usuario"},"nombre":"DuckGo","url":"http://www.duckgo.com","created":"2014-12-25T21:30:42.546Z","veces_usado":0,"icono":"","__v":0},
{"_id":"2","user":{"_id":"b","displayName":"usuario"},"nombre":"Wolfram","url":"http://www.wolfram.com","created":"2014-12-25T21:30:00.775Z","veces_usado":0,"icono":"","__v":0}]
根据我的阅读,我知道可以使用以下命令将包含JSON的字符串变成实际的JSON:
JSONObject jsonObjecto= new JSONObject(jsonString);
除了阵列,我该怎么办?
谢谢
最佳答案
由于您的情况是JSON根对象,因此您可以使用JSONArray
解析输入
try {
JSONArray rootArray = new JSONArray(inputJSON);
JSONObject firstJSONObj = rootArray.getJSONObject(0);
System.out.println(
firstJSONObj.getJSONObject("user").getString("displayName") // prints "usuario"
);
} catch (JSONException e) {
e.printStackTrace();
}
查看JSONArray文档,以获取有关可用方法的更多信息。