没有键值的Java JSON数据

时间:2016-02-12 09:29:29

标签: java json

这是我试图阅读的有问题的JSON数据:

"555":{
    "ID":115,
    "name":"John Smith",
    "email":"john@gmail.com",
    "tel":"0123456789"
},
"568":{
    "ID":221,
    "name":"Xxxx xxxxx",
    "email":"xxxx@gmail.com",
    "tel":"0123456789"
}}

我想阅读ID,姓名和电子邮件,并将它们与" \ t"分开,但我不知道关键值,因为它是通过随机函数生成的。

String data;
JSONObject json = new JSONObject(sb.toString()); / sb is StringBuffer
String[] keyValues = JSONObject.getNames(json);
for(int i=0; keyValues.length < i; i++) {
   data = jsonObj.getString(keyValues[i]);
}

我在这里遇到了一些JSON Java示例,但没有这样的。有人可以向我解释我错在哪里吗?

1 个答案:

答案 0 :(得分:0)

JSON支持对象作为对象的子对象。 getJSONObject()方法对于检索这些子对象非常有用

for(int i=0; keyValues.length < i; i++) {
  JSONObject obj = jsonObj.getJSONObject(keyValues[i]);
  System.out.println (obj.getInt("ID")+" "+obj.getString("name");
}

参考:http://developer.android.com/reference/org/json/JSONObject.html#getJSONObject(java.lang.String)