我需要读入一些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:
java -Duser.timezone=UTC -jar my.jar
是的,使用
X
。来自DateTimeFormatter 文档:
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
这样的日期。