在没有KEY的情况下解析嵌套的Json

时间:2015-11-17 02:30:38

标签: android json parsing

我有以下json文件

    {"Abra":[
    "Bangued",
    "Boliney",
    "Bucay",
    "Bucloc",
    "Daguioman",
    "Danglas"],

    "Agusan del Norte":[
    "Buenavista",
    "Butuan City",
    "Cabadbaran City",
    "Carmen",
    "Jabonga",
    "Kitcharao"]
    }

他们代表我国的市政当局,他们内部是他们所覆盖的城市。我的问题是我不知道如何在我的代码中解析它们。市政当局不是静止的,因为它取决于他/她想要发送的任何市政当局的发送者。任何人都可以帮助我做我应该做的事情......我一直在网上寻找解决方案,但我没有找到任何成功。提前谢谢你。

2 个答案:

答案 0 :(得分:1)

您可以做的是将此JSONObject转换为JSONArray,例如:

[
    "Abra":[
    "Bangued",
    "Boliney",
    "Bucay",
    "Bucloc",
    "Daguioman",
    "Danglas"],

    "Agusan del Norte":[
    "Buenavista",
    "Butuan City",
    "Cabadbaran City",
    "Carmen",
    "Jabonga",
    "Kitcharao"]
]

然后你可以使用get()的{​​{1}}方法,让你把元素放到指定的位置。

然而,每个元素的内容似乎都不是有效的JSON,因为它看起来像枚举。

答案 1 :(得分:1)

keys()将返回JSON对象中名称的迭代器。它可以使用 循环键并检索相应的数组。

JSONObject json = new JSONObject("");
Iterator<String> iterator = json.keys();
while(iterator.hasNext()){
    String key = iterator.next();
    JSONArray array = json.getJSONArray(key);
}