java Gson json formatter,可以输出Z而不是+0000吗?

fnx2tebb  于 2023-10-18  发布在  Java
关注(0)|答案(1)|浏览(113)

我需要读入一些json,排序,然后再次输出。我用这个来反序列化和序列化json:

private static Gson gson = new GsonBuilder()
        .setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ")
        .create();

如果我把它解析为一个日期:

"activedDate": "2021-04-20T21:48:04.107Z",

然后再次输出为Json,我得到了这个:

"activedDate": "2021-04-20T21:48:04.107+0000",

但如果可能的话,我需要它有Z而不是+0000。
这是可能的吗(不需要破解结果字符串)?
我强迫我的笔记本电脑UTC thusly:

java -Duser.timezone=UTC  -jar my.jar
eqfvzcg8

eqfvzcg81#

是的,使用Xthe DateTimeFormatter docs

X       zone-offset 'Z' for zero    offset-X          Z; -08; -0830; -08:30; -083015; -08:30:15;

因此,像yyyy-MM-dd'T'HH:mm:ss.SSSX这样的格式字符串将给予像2022-07-26T16:46:35.247Z这样的日期。

相关问题