解析要映射的json字符串时如何保留所有数字

时间:2019-03-13 08:45:58

标签: java json digits

我有一个像这样的json字符串

{
"ParValue":100.00,
"RealAmount":100.00,
"SettlementAmt":86.000,
"CardNo":"1707264632031051",
"ReturnCode":1,
"ReturnMsg":"success",
"PlatformOrderNo":"OR1903121512045682711",
"MerchOrderNo":"163244040",
"Sign":"9A9B363CBDABBF14C1F8EFC34CC09D2E"
}

并且我想将其转换为Map对象,所以我使用了这种方式:

   HashMap<String,String> map=new Gson().fromJson(response,HashMap.class);

或此

HashMap<String,String> map=  new ObjectMapper().readValue(response,HashMap.class);

(响应代表上述json字符串。)

此后,我得到了地图enter image description here

所有数字都已修剪,我需要保留原点值,有什么办法吗?

1 个答案:

答案 0 :(得分:0)

因为ParValueRealAmountSettlementAmt是JSON数字类型。

您需要先将所有内容转换为字符串类型,然后再使用Gson

{
    "ParValue":"100.00",
    "RealAmount":"100.00",
    "SettlementAmt":"86.000",
    "CardNo":"1707264632031051",
    "ReturnCode":1,
    "ReturnMsg":"success",
    "PlatformOrderNo":"OR1903121512045682711",
    "MerchOrderNo":"163244040",
    "Sign":"9A9B363CBDABBF14C1F8EFC34CC09D2E"
}

希望对您有帮助。