我的代码:
JSONObject data = {"result":{"a":[{"artist":"Aney","number:"1"},{"artist":"Aney","number:"2"}],"b":[{"artist":"Boney","number:"3"},{"artist":"Boney","number:"4"}], ....
JSONObject obj = new JSONObject(data.toString());
JSONArray tasks = obj.optJSONArray("result");
但是tasks
返回null
。
我尝试了下面的代码,但它不起作用:
JSONObject data = {"result":{"a":[{"artist":"Money",...
JSONArray tasks = data.optJSONArray("result");
更新:
我的主要代码是:
// get data from main url and reutnr array
JSONArray tasks = data.optJSONArray("result");
if(alert){
// get data from another url and return object
JSONObject data = {"result":{"a":[{"artist":"Money",...
tasks = data.optJSONArray("result");
}
// now i use tasks in my code
if(tasks.length() > 0){
....
}
发布于 2018-07-05 04:52:39
当您看到"key": { ... }
时,这意味着key
是一个JSONObject
。
当您看到"key": [ ... ]
时,这意味着key
是一个JSONArray
。
在本例中,"result"
是一个JSONObject
,所以改写如下:
JSONObject tasks = obj.optJSONObject("result");
发布于 2018-07-05 05:11:52
结果(a,b)位于根对象内的对象‘JSONArray’中,因此您必须在层次结构中导航才能获取它:
JSONObject obj = new JSONObject(data.toString());
JSONObject result = obj.getJSONObject("result");
JSONArray tasksA = result.optJSONArray("a");
JSONArray tasksB = result.optJSONArray("b");
请注意,每个'a‘和'b’是要检索的不同JSONArray。
https://stackoverflow.com/questions/51180601
复制相似问题