我有这段代码:
JSONArray data = object.getJSONArray("Test");
for (int i = 0; i < data.length(); i++)
{
JSONObject dataObject = data.getJSONObject(i);
etc ...
我不知道在运行时之前我将在dataObject中拥有什么。是否有可能以某种方式循环键?
我认为这可能有用,正如我在其他Stackoverflow文章中提到的那样:
for (String key : dataObject.keys())
但是我收到一条错误,上面写着“只能迭代数组或java.lang.Iterable的实例”
有谁知道怎么做?
答案 0 :(得分:4)
要检索对象的键,这可能有效:
Iterator<?> iterator = object.keys();
while (iterator.hasNext()) {
String key = (String)iterator.next();
//do what you want with the key.
}
答案 1 :(得分:0)
JSONArray names()
Returns an array containing the string names in this object.
http://developer.android.com/reference/org/json/JSONObject.html
答案 2 :(得分:0)
我希望这会有所帮助
Object obj = parser.parse(s);
JSONArray array = (JSONArray)obj;
请参阅以下链接
答案 3 :(得分:0)
我猜
Iterator keys = json.keys();
这将为您提供json对象的键作为java iterator
How can I iterate JSONObject to get individual items
这将为您提供以迭代方式获取键和值的想法,并帮助您实现您的需求