我在我的json字符串中獲得了不同類型的數字。所以用JSONObject解析這些數字會導致3.7E-4
這樣的數字表示。我更喜歡將數字看作string
。該怎麼辦?如何防止這種轉換?org.json.JSONObject與數據混合
{"data":
{"number1":0.0004,
"number2":0.00038,
"number3":0.00037
}}
我在我的json字符串中獲得了不同類型的數字。所以用JSONObject解析這些數字會導致3.7E-4
這樣的數字表示。我更喜歡將數字看作string
。該怎麼辦?如何防止這種轉換?org.json.JSONObject與數據混合
{"data":
{"number1":0.0004,
"number2":0.00038,
"number3":0.00037
}}
只需在將您的號碼設置爲JSON之前創建一個字符串即可。
或
int number = 0;
json.put(number + "");
你能舉個例子數量,而不是代表像上面?
我認爲這是這個特定的json庫的一些限制。作爲一種解決方法,您可以將解析的值轉換爲BigDecimal並使用它,除非雙重轉換不會顯着損失精度。
有關詳細信息閱讀:How to prevent JSONObject from json.jar converts decimal numbers string into double
是您使用的庫來解析JSON,傑克遜? – Philipp
請再閱讀文章。 – Outofdate
[哪一個](http://grepcode.com/search/?query=*.JSONObject) – Philipp