无法将日期和时间转换为 LocalDateTime

我正在尝试使用以下代码将字符串转换Wed July 2019 10:53 PM为对象:LocalDateTime


String dateAndTimeAsStr = "Wed July 2019 10:53 PM";

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("EEE MMMM yyyy h:mm a");

LocalDateTime dateAndTimeAsLocalDateTime = LocalDateTime.parse(dateAndTimeAsStr, formatter);

然而,当我运行此代码时,出现以下错误:


Exception in thread "main" java.time.format.DateTimeParseException: Text 'Wed July 2019 10:53 PM' could not be parsed: Unable to obtain LocalDateTime from TemporalAccessor: {DayOfWeek=3, MonthOfYear=7, Year=2019},ISO resolved to 22:53 of type java.time.format.Parsed

改变yyyytoYYYY和hto 并hh没有产生任何不同的结果。

根据SO 上的这个答案文档,我的模式似乎与提供的文本匹配。

我究竟做错了什么?

谢谢


守候你守候我
浏览 176回答 1
1回答

慕容森

缺少月份中的某天您的输入字符串缺少月份中的日期。它说“2019 年 7 月”,但不是7 月的哪一天。格式化的日期字符串是不可逆的(因为您可以使用格式化程序格式化现有的 LocalDateTime,但不能将其解析回来)。因为它缺少日值。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java