Java循环遍历Json数组?
我正在尝试遍历以下内容 JSON
{ "dataArray": [{
"A": "a",
"B": "b",
"C": "c"
}, {
"A": "a1",
"B": "b2",
"C": "c3"
}]
}
我到目前为止所得到的:
JSONObject jsonObj = new JSONObject(json.get("msg").toString());for (int i = 0; i < jsonObj.length(); i++) {
JSONObject c = jsonObj.getJSONObject("dataArray");
String A = c.getString("A");
String B = c.getString("B");
String C = c.getString("C");
}
有任何想法吗?
回答:
在您的代码中,元素dataArray
是JSON对象的数组,而不是JSON对象本身。元件A
,B
和C
是JSON的一部分内部对象dataArray
JSON阵列。
您需要遍历数组
public static void main(String[] args) throws Exception { String jsonStr = "{ \"dataArray\": [{ \"A\": \"a\", \"B\": \"b\", \"C\": \"c\" }, { \"A\": \"a1\", \"B\": \"b2\", \"C\": \"c3\" }] }";
JSONObject jsonObj = new JSONObject(jsonStr);
JSONArray c = jsonObj.getJSONArray("dataArray");
for (int i = 0 ; i < c.length(); i++) {
JSONObject obj = c.getJSONObject(i);
String A = obj.getString("A");
String B = obj.getString("B");
String C = obj.getString("C");
System.out.println(A + " " + B + " " + C);
}
}
版画
a b ca1 b2 c3
我不知道msg
您的代码片段来自何处。
以上是 Java循环遍历Json数组? 的全部内容, 来源链接: utcz.com/qa/431413.html