代码之家  ›  专栏  ›  技术社区  ›  shurrok

如何将JSON创建的映射转换为Java中的另一个映射?

  •  -1
  • shurrok  · 技术社区  · 7 年前

    {
    "issues": [
            {
               "no1": 5509,
               "date": 1451520000
            },
            {
               "no1": 6713,
               "date": 1451433600
            }],
    "no2": [
        220380,
        163950,
        213330,
        215250,
        174300]
    }
    

    我需要创建一张地图 其中no1值将是地图的键,日期值将是地图的值。我已经有了将JSON从文件传输到映射的方法,我知道如何获取 问题 这将是: mapFromJson.get("issues");

    issues=[{ no1: 5509.0, date: 1.45152E9}, {no1: 6713.0, date: 1.4514336E9}]
    

    1 回复  |  直到 7 年前
        1
  •  1
  •   VIX    7 年前

    您可以使用 JSON Library (您必须在项目中附加JAR文件)。此外,我在本文中找到了将JSON转换为Map的好答案 link 。我建议使用这些功能。

    例子:

    JSONObject json = new JSONObject(<your_json_string>);
    ArrayList issues =  (ArrayList) jsonToMap(json).get("issues");
    

    ArrayList issues HashMap 。例如,如果你想 date 属于 no1 ,您可以通过以下方式访问:

    ((HashMap)issues.get(0)).get("date")