[{"post":{"titel":"Glee","interpret":"Bran Van 3000","jahr":"1997","id":"5"}},{"post":{"titel":"Goodbye Country (Hello Nightclub)","interpret":"Groove Armada","jahr":"2001","id":"4"}},{"post":{"titel":"Beauty","interpret":"Ryuichi Sakamoto","jahr":"1990","id":"1"}}]
上面的字符串是我在json中所拥有的,现在我想做的是只获得“post”和“titel”的值,如上面的字符串我有3个值的帖子,这是有意义的我。但是,现在我想要的是打印post的所有3个值和post字符串中的每个值。
JSONArray jsonArray = new JSONArray(jsonString);
columns = new String[jsonArray.length()];
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
columns[i]=jsonObject.getString("post");
}
上面的代码返回3个post值。如果我想在帖子中打印帖子的值和列的每个值,我该怎么办?
答案 0 :(得分:0)
我会做这样的事情(我不打算使用columns
数组进行打印,并且未对此代码进行测试):
JSONArray jsonArray = new JSONArray(jsonString);
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
JSONObject postObj = jsonObject.getJSONObject("post");
for (String i : postObj.keys()) {
System.out.println("Key: " + i + "; Value: " + postObj.getString(i));
}
}
即,处理每个数组元素的“post”对象返回的Object的每个元素。