您好我正在尝试从JSON对象中读取日期。日期以UTC毫秒的形式写入JSON,但是当我尝试读取它时,信息丢失了。 JSON给出了数字
"time":1526438700000
和
int value = jsonObj.getInt("time")
返回不同的值。信息丢失可能会导致long
转换为int
吗?
我正在使用javax.json
实施。 jsonObj
是我从JsonArray
获得的对象。我不认为有getLong
方法。我尝试转换为long
,将值声明为long
,结果相同。我认为问题是getInt()
?
答案 0 :(得分:2)
您的号码大于可以在int中保存的maximum value(MAX_VALUE = 2147483647)
尝试将其设为长,因为最大值更大(MAX_VALUE = 9223372036854775807L)。
使用javax.json库,您可以通过getJsonNumber
方法
jsonObj.getJsonNumber("time").longValue();