【问题标题】:How to convert Map created from JSON to another Map in Java?如何将从 JSON 创建的 Map 转换为 Java 中的另一个 Map?
【发布时间】:2017-12-15 15:48:19
【问题描述】:

我得到了这样的 JSON 文件:

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

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

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

如何将其转换为地图?

【问题讨论】:

  • “我已经有了将 JSON 传输到地图的方法”——那么问题是什么?
  • 因为这个从文件转换

标签: java json hashmap type-conversion


【解决方案1】:

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

例子:

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

ArrayList issues 中的每个元素,都已经是HashMap。例如,如果你想得到dateno1,你可以这样访问:

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

【讨论】:

    猜你喜欢
    • 2014-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-09
    • 2022-01-16
    • 2019-11-20
    • 2022-11-12
    相关资源
    最近更新 更多