如何在Java中解析JSON数组?

时间:2015-03-13 18:33:56

标签: java json

我有以下JSON文本,并希望得到值"讨厌"并且"不喜欢"。

{
  "noun": {
    "syn": [
      "hatred",
      "emotion"
    ],
    "ant": [
      "love"
    ]
  },
  "verb": {
    "syn": [
      "detest",
      "dislike"
    ],
    "ant": [
      "love"
    ]
  }
}

我尝试使用org.json库解析它,并使用以下内容:

JSONArray obj = new JSONObject(String);
JSONArray arr = obj.getJSONArray("syn");

但我似乎无法以这种方式访问​​数组。 非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

以下内容与JSON.simple库有关。


您需要JSONParser个实例才能从JSONObject对象中获取String值。

JSONObject data;
try {
    JSONParser helper = new JSONParser();
    data = (JSONObject)helper.parse(String);
} catch (ParseException parse) {
    // Invalid syntax
    return;
}
// Note that these may throw several exceptions
JSONObject node = (JSONObject)data.get("verb");
JSONArray array = (JSONArray)node.get("syn");