我想在java中访问一个奇怪的JSONObject,但它有点奇怪而且我被卡住了。这就是JSON Object的样子
{"a":{"11":[{"name":"\"test\"","value":55}]},"b":{"11":[{"name":1,"value":107}]},"c":{"11":[{"name":"test3","value":07}]},"d":{},"e":{}}
我试图像这样访问它,但不知道如何访问这些" 11"因为它是可变的,可以是任何数字。
Log.d(TAG, "A Object"+ main.getJSONObject("a"));
答案 0 :(得分:1)
如何使用getNames()
获取所有关键名称并从那里继续前进?
在Android中,它是names()
答案 1 :(得分:0)
在您的情况下,您可能应该使用JSONReader并根据需要处理密钥名称。
http://developer.android.com/reference/android/util/JsonReader.html
JsonReader reader = new JsonReader(new InputStreamReader(in, "UTF-8"));
reader.beginObject();
while (reader.hasNext()) {
String name = reader.nextName(); // a, b or c
reader.beginObject();
while (reader.hasNext()) {
String name = reader.nextName(); // 11 or whatever
reader.beginArray();
...
}
reader.endObject();
}
reader.endObject();