joa*_*him 3 java java.time.instant
我正在尝试将以下字符串解析2021-10-15T08:39:05+02:00为一个Instant可以使用 Java 15 无缝运行的字符串,但对于 Java 11 会抛出错误。
java.time.format.DateTimeParseException: Text '2021-10-19T11:06:35+02:00' could not be parsed at index 19
为什么会这样?
Instant.parse("2021-10-15T08:39:05+02:00");
Run Code Online (Sandbox Code Playgroud)
编辑:Java 15
字符串 ... 使用 进行解析
DateTimeFormatter.ISO_INSTANT。
因此,请阅读以下文档DateTimeFormatter.ISO_INSTANT:
解析时,将使用 的行为
DateTimeFormatterBuilder.appendOffsetId()来解析偏移量,根据需要将瞬时转换为 UTC
解析时...(没有关于如何解析偏移量的信息)
两者之间的行为发生了变化,以使DateTimeFormatter.ISO_INSTANT(以及使用它的代码制作)接受更广泛的输入。
Instant要使用Java 11 从该字符串中获取 an ,您可以首先解析为 a OffsetDateTime,然后使用toInstant()来获取相应的Instant.
| 归档时间: |
|
| 查看次数: |
1747 次 |
| 最近记录: |