【发布时间】:2018-11-15 07:43:02
【问题描述】:
我使用 Spring Boot 在 Java 中将 Instant 转换为 LocalDateTime,如下所示
LocalDateTime.ofInstant(timeInUtc, zoneId);
在我的测试中,我得到了一个正则表达式来检查我的资源是否返回一个带有 LocalDateTime 的 Json。正则表达式需要一个 JSON 值,格式为:
2018-11-15T08:38:49.382
但看起来后面的零被删除了,意思是而不是
2018-11-15T08:38:49.380
这符合正则表达式,我明白了
2018-11-15T08:38:49.38
如何确保不删除尾随零?
【问题讨论】:
-
如何将 localdatetime 对象转换为字符串?
-
如何打印/格式化它?如果我运行
System.out.println(LocalDateTime.parse("2018-11-15T08:38:49.380")),我会得到2018-11-15T08:38:49.380(尾随零)。 -
我使用 Jackson 将我的对象序列化和反序列化为 JSON。
-
为了精确起见,不会删除尾随零。
Instant和LocalDateTime都没有任何文本表示,但是当您调用toString时会生成一个。在这种情况下不会生成尾随零。它们确实会生成 ISO 8601 格式,这在大多数情况下都很好,所以请再次检查在您的情况下是否真的存在零的问题。 -
你为什么不改正则表达式?
标签: java spring-boot java-8 instant