【发布时间】:2019-09-04 18:35:26
【问题描述】:
我有一个时间戳 2019-09-02T09:42:05+0000。最后一部分 +0000 是什么意思以及如何将此时间戳转换为 LocalDateTime 对象?
LocalDateTime.parse("2019-09-02T09:42:05", DateTimeFormatter.ISO_LOCAL_DATE_TIME)
完美运行。我无法为 2019-09-02T09:42:05+0000
找到合适的格式化程序【问题讨论】:
-
+0000是时区偏移量。我建议您仔细阅读有关ISO 8601 日期格式的维基百科页面。 -
由于你的字符串包含一个 UTC 偏移量(这就是 +0000 的含义),
OffsetDateTime是一个比LocalDateTime更好的 matxh,我建议你解析它。如果您知道您希望您的LocalDateTime在哪个时区,则可以随后转换为LocalDateTime。 -
后续转换为
LocalDateTime始终是可能的。你的意思是ZonedDateTime? @OleV.V. -
是的,时间戳告诉您这是 UTC(或 GMT)时间。将其解析为它所说的内容。像这样解析代码也适用于使用其他偏移量的时间戳。
标签: java datetime timestamp datetime-format