【问题标题】:How do I parse a JSON array in Java? [duplicate]如何在 Java 中解析 JSON 数组? [复制]
【发布时间】:2015-03-13 18:33:56
【问题描述】:

我有以下 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");

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

【问题讨论】:

  • 显示重现问题的实际代码并说明它对您不起作用的具体原因。在 Java 中解析 JSON 是一个在很多地方反复广泛讨论的主题,我强烈建议您粗略搜索一下并查看一些教程。

标签: java json


【解决方案1】:

以下与JSON.simple库有关。


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

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");

【讨论】:

    猜你喜欢
    • 2016-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-17
    • 2014-08-05
    • 1970-01-01
    • 2018-04-24
    • 2014-07-24
    相关资源
    最近更新 更多