我正在編寫一個程序來將包含紀元時間的JSON內容轉換爲XML格式的一個屬性並將其存儲在一個字符串中。對於紀元時間的JSONObject xml轉換錯誤
下面是代碼
String data = "{\"result\":\"pass\", \"timestamp\":1497870880.0396869183}";
JSONObject json = new JSONObject(data); //the json object contains proper epoch value after this line
String event = XML.toString(json);
當我打印字符串事件的內容,我得到
<result>pass</result><timestamp>1.497870880039687E9</timestamp>
時間戳的值被改變。
但是,如果JSON內容具有劃時代時間戳作爲字符串,如
String data = "{\"result\":\"pass\", \"timestamp\":"1497870880.0396869183"}";
然後將生成的事件串給出正確的結果
<result>pass</result><timestamp>1497870880.0396869183</timestamp>
可有人請解釋爲什麼發生這種情況? JSON XML API對LONG值不友好嗎? 注意:輸入的JSON內容將包含具有字符串值和紀元時間的多個屬性。
它並不完全改變價值。它正在變爲科學計數法 –
在XML之前打印出JSONObject。問題可能是json庫 –
json對象具有正確和準確的epoch值和精確的內容作爲json內容。問題發生在toString()調用之後。 –