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

时间:2017-07-11 14:10:11

标签: java json hashmap type-conversion

我得到了这样的JSON文件:

{
"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 个答案:

答案 0 :(得分: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。例如,如果您想获得date no1,则可以通过以下方式访问:

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