繁体   English   中英

如何获取动态JSON数组中每个对象的密钥?

[英]How do I get the key for each object in a dynamic JSON array?

如何解析此对象并获取每个人的名称(键)?

我不能只是做String name = jsonObject.getString("name"); 因为名称是 ,而不是值。

JSONObject jsonObject =

{
    "data" :
    [{
        "Bob": {
            "last-name": "Jorgenson",
            "email": "b@b.com",
        },

        "Steve": {
            "last-name": "Bobson",
            "email": "steve@juno.com",
        },
    }],
    "statusCode" : 200
}

那么用动态命名的键解析它的最佳方法是什么?

更新:

jArray从现在表示的jsonObject中获取。 但是,由于与尝试从jsonObject.get("data")获取jArray有关的类型错误,我无法实现答案。

免责声明

是的,这是非常基本的东西。 动态的东西让我失望了。 有许多类似的问题,但它们通常涉及许多其他因素。 我可以成功下载数据并将其存储在上面的JSONObject jsonObject中 我只需要弄清楚如何解析如上所述的数据。

    Iterator<String> keys = jsonObject.keys();
    while (keys.hasNext()) {
        String key = keys.next();
    }

JSONObject的keys()方法可能是您正在寻找的方法。

您可以使用此:

for(int i=0;i<jsonArray.length();i++){
    JSONObject temp = jsonArray.getJSONObject(i);
    String name;
    Iterator<String> keys = temp.keys();
    if(keys.hasNext())
        name = keys.next();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM