有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何获取JSONObject的元素?

我有一个JSONObject,其中包含一些JSONObjects,如下所示:

"statistics": {
    "John": {
      "Age": "22",
      "status": "married"
    },
    "Ross": {
      "Age": "34",
      "status": "divorced"
    }
 }

现在我只知道对象名(统计),不知道它是元素数或者它是元素名,那么,有没有办法解析这个对象,这样我就可以得到它的元素并处理它(比如John,Ross)


共 (2) 个答案

  1. # 1 楼答案

    JSONObject json = new JSONObject(yourdata);
    String statistics = json.getString("statistics");
    JSONObject name1 = json.getJSONObject("John");
    String ageJohn = name1.getString("Age");
    

    要以动态方式获取这些项目:

    JSONObject json = new JSONObject(yourdata);
    String statistics = json.getString("statistics");
    
    for (Iterator key=json.keys();key.hasNext();) {
        JSONObject name = json.get(key.next());
        //now name contains the firstname, and so on... 
    }
    
  2. # 2 楼答案

    您没有指定要使用哪个库来表示JSON对象。通常有方法枚举对象的属性。例如:

    org.json.JSONObject.keys()
    

    返回对象中字符串名称的迭代器