拥有以下代码:
String s= v.request("engine/?key=", "P4z72NmBa91&method=load");
JSONParser parser = new JSONParser();
Object obj = parser.parse(s);
JSONArray arr = (JSONArray)obj;
System.out.println(arr);
哪个输出:
[
{"time":"2012-09-10 19:09:08",
"username":"SomeUsername",
"times_logged":"1",
"ip":"33.33.33.33"
}
]
如果上述格式不正确,请注意。
无论如何,arr
中有多组这些,当我arr.get(0)
时,它会按预期返回第一组。什么是行不通的是我无法做arr.get(0).get(1)
或arr.get(0).get("time")
或类似的事情。我试着像这样设置它:
for(int i = 0; i < arr.size(); i++) {
JSONArray p = (JSONArray)arr.get(i);
System.out.println(p.get(0));
}
,我收到了问题标题中提到的错误。虽然我认为arr
不是JSONArray,而是JSONObject?如果是这种情况,我如何迭代arr
中包含的内容并获取每个项目?
答案 0 :(得分:4)
for(int i = 0; i < arr.size(); i++) {
JsonObject p = (JsonObject)arr.get(i);
System.out.println(p.get("time").getAsString());
}