【发布时间】:2020-04-29 12:49:14
【问题描述】:
我正在尝试解析格式为“HHmmssZ”的日期字符串,
OffsetTime.parse("115601Z", DateTimeFormatter.ofPattern("HHmmssZ")).toLocalTime()
当我测试它时,我得到了异常:
java.time.format.DateTimeParseException: Text '112322Z' could not be parsed at index 6
at java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:1949)
at java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1851)
at java.time.OffsetTime.parse(OffsetTime.java:327)
【问题讨论】:
-
文本
112322最后缺少所需的Z! -
与 z 相同,无需对此投反对票:(
-
如果您阅读文档,即
DateTimeFormatter的javadoc,它会说:“偏移量Z:这会根据模式字母的数量来格式化偏移量。一,两个或三个字母输出小时和分钟,不带冒号,例如'+0130'。当偏移量为零时,输出将是'+0000'。" --- 格式字符串中的单字母Z无法理解输入中的Z。您的格式字符串需要ZZZZZ、XXXX、XXXX、XXX、XX或X才能匹配Z字母。 -
仅供参考: 如果错误文本与您显示的代码匹配,那就太好了。最初的问题被否决了,因为显示的错误非常明显,使得该问题对其他人完全无用。已删除反对票。
-
这能回答你的问题吗? Parse Date String in Java [duplicate]。和/或这个? ZonedDateTime ignores 00 for ss part.
标签: java datetime-format localtime