小编Ada*_*aev的帖子

如何将“2016 年 11 月 20 日 12:00:00 AM”解析为 LocalDateTime?

我发现了非常有趣的错误或类似的东西。

我使用这种日期格式MMM d, yyyy hh:mm:ss a,它会像这样打印日期

Aug 13, 2020 01:19:50 pm
Run Code Online (Sandbox Code Playgroud)

但是,当我分析Nov 20, 2016 12:00:00 AMLocalDateTime,它抛出异常

java.time.format.DateTimeParseException: Text 'Nov 20, 2016 12:00:00 AM' could not be parsed at index 22.
Run Code Online (Sandbox Code Playgroud)

在我将 'AM' 更改为 'am' 后,它完美运行!所以LocalDateTime字面上无法解析日期,因为大写 a?p?e?s?字母?我该如何解决这个问题,而不用将 'AM' 替换为 'am' 并将 'PM' 替换为 'pm'

编辑

SimpleDateTime格式没有这个问题,他忽略了 a?p?e?s? 字母寄存器(我的意思是大写或小写)我不想转换DateLocalDateTime

编辑 2

MMM d, yyyy hh:mm:ss A 将 'a' 替换为 'A' 也不起作用

java datetime-format localdatetime datetimeformatter

1
推荐指数
1
解决办法
177
查看次数