org.json.JSONObject搞乱数据

时间:2014-01-27 12:26:49

标签: java

我的json字符串中有不同类型的数字。因此,使用JSONObject解析此数字会导致3.7E-4 - 就像这个数字的表示一样。我更愿意将数字视为string。该怎么办?如何防止这种转换?

{"data":
    {"number1":0.0004,
     "number2":0.00038,
     "number3":0.00037
}}

2 个答案:

答案 0 :(得分:0)

只需在将您的号码添加到JSON之前创建一个字符串。

int number = 0;
json.put(number + "");

你能给出一个例子编号,上面没有表示吗?

答案 1 :(得分:0)

我认为这是特定json库的一些限制。作为一种变通方法,您可以将解析后的值转换为BigDecimal并使用它,除非双重转换不会显着降低精度。

有关详细信息,请阅读:How to prevent JSONObject from json.jar converts decimal numbers string into double