如何"2020-05-22T12:51:20.732111Z"在 Java 中解析为 Instant?
我用了:
LocalDateTime.parse(
startTime, DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", Locale.US))
.atZone(ZoneId.of("America/Toronto"))
.toInstant()
Run Code Online (Sandbox Code Playgroud)
但有错误:
Exception in thread "main" java.time.format.DateTimeParseException: Text '2020-05-22T12:51:20.732111Z' could not be parsed at index 24
at java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:1949)
at java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1851)
at java.time.LocalDateTime.parse(LocalDateTime.java:492)
at Instant.Main.main(Main.java:54)
Run Code Online (Sandbox Code Playgroud)
使用Instant#parse(String):
Instant i = Instant.parse("2020-05-22T12:51:20.732111Z");
Run Code Online (Sandbox Code Playgroud)
如果您想将其转换为您的时区:
ZonedDateTime z = i.atZone(ZoneId.of("America/Toronto"));
Run Code Online (Sandbox Code Playgroud)
打印它产生:
2020-05-22T08:51:20.732111-04:00[America/Toronto]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
267 次 |
| 最近记录: |