我正在尝试使用java.time.format.DateTimeFormatter来解析日期,例如"2017-04-03 19:16:19 Etc/GMT",但是遇到了 java.time.format.DateTimeParseException: Text '2017-04-03 19:16:19 Etc/GMT' could not be parsed at index 20
的错误。
以下是我的格式化程序的初始化方式:
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss zzz");
同时,如果日期如下:"2017-04-03 19:16:19 Etc/UTC",一切都很好。
我检查了java.time.ZoneId.getAvailableZoneIds()
- 字符串"Etc/GMT"在列表中(从技术上讲,在Set中)。
有什么想法吗?
"yyyy-MM-dd HH:mm:ss VV"
。 - AndreasDateTimeFormatter
的 Javadoc 已经展示了V
是匹配命名时区的格式字符,而不是z
。只需删除该问题即可。 - Andreas