【发布时间】:2020-05-15 13:28:44
【问题描述】:
我的解析器可能会遇到“2:37PM”(由“H:mma”解析)或“02:37PM”(由“hh:mma”解析)。我如何在不使用 try-catch 的情况下解析两者?
当我弄错时,我会收到这样的错误:
发现冲突:字段 AmPmOfDay 0 与派生的 AmPmOfDay 1 不同 从 02:37 开始
【问题讨论】:
-
显示您使用的代码可能是个好主意,因为只有一个小的描述和无上下文的错误消息不是minimal reproducible example
-
了解这些模式字母的确切含义可能也是一个好主意:错误很可能是由于
"2:37PM"使用带有大写 H 加的模式进行解析一个一个。如果你使用大写的H,你就不需要在模式中使用那个a。用"h:mma"解析第一个而不是"H:mma"或将a 留在末尾,这会将其解析为"14:37"! -
这能回答你的问题吗? Problem with parse a LocalDateTime using java 8 和/或 this?
标签: java datetime time-format