java 从 json 读取日期

java read date from json

您好,我正在尝试从 JSON 对象中读取日期。日期以 UTC 毫秒写入 JSON,但是当我尝试读取它时,信息丢失了。 JSON 给出了数字

"time":1526438700000

int value = jsonObj.getInt("time")

returns 不同的值。将 long 转换为 int 会不会有信息丢失?

我正在使用 javax.json 实现。 jsonObj 是我从 JsonArray 获得的一个对象。我认为没有 getLong 方法。我尝试转换为 long,将值声明为 long,结果相同。我认为问题是 getInt()?

您的数字大于可以保存在 int 中的 maximum value (MAX_VALUE = 2147483647)

尽量把它弄长一点,因为最大值要大得多 (MAX_VALUE = 9223372036854775807L)。

有了javax.json库,可以通过getJsonNumber方法获取long值

jsonObj.getJsonNumber("time").longValue();