繁体   English   中英

使用Java的嵌套JSON解析

[英]Nested JSON parsing using Java

{
  "transaction": {
    "id": 1,
    "empid": "12345",
    "details1": {
      "name": "xyz",
      "age": "30",
      "sex": "M",
      "Address": {
        "Office": "office",
        "Home": "Home"
      }
    },
    "abcDetails": "asdf",
    "mobile": 123455
  },
  "details2": {
    "id": 2,
    "empid": "64848",
    "details": {
      "name": "eryje",
      "age": 3027,
      "sex": "M",
      "Address": {
        "Office": "office",
        "Home": "Home"
      }
    },
    "abcDetails": "fhkdl",
    "mobile": 389928
  }
}

我正在以上述格式获取数据。 在这里,我确实使用循环拆分和迭代数据。 第一次是低于格式化数据。 所以在此我想获得名称和年龄值以及details1.Address.Office值(键不是静态的)。

 "details1": {
        "name": "xyz",
        "age": "30",
        "sex": "M",
        "Address": {
            "Office": "office",
            "Home": "Home"
        }
    }

尝试使用JSONObject keys()获取密钥,然后迭代每个密钥以获取动态值。

// searchResult refers to the current element in the array "search_result"
JSONObject questionMark = searchResult.getJSONObject("question_mark");
Iterator keys = questionMark.keys();

while(keys.hasNext()) {
    // loop to get the dynamic key
    String currentDynamicKey = (String)keys.next();

    // get the value of the dynamic key
    JSONObject currentDynamicValue = questionMark.getJSONObject(currentDynamicKey);

    // do something here with the value...
}

参考: 如何在嵌套JSON结果中解析动态JSON密钥?

暂无
暂无

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

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