【发布时间】:2021-10-15 19:16:39
【问题描述】:
我正在尝试将一些日期字符串解析为日期值,但是,使用下面的代码,我得到了一个异常:
我的代码
DateTimeFormatter formatter = new DateTimeFormatterBuilder()
.parseCaseInsensitive()
.append(DateTimeFormatter.ofPattern("MMM-uuuu"))
.parseDefaulting(ChronoField.DAY_OF_MONTH, 1)
.toFormatter(Locale.ENGLISH);
LocalDate KFilter = null;
KFilter = YearMonth.parse("July-2021", formatter).atDay(1)
错误日志是
java.time.format.DateTimeParseException: Text 'July-2021' could not be parsed at index 3
【问题讨论】:
-
当您使用
parseDefaulting(ChronoField.DAY_OF_MONTH, 1)时,无需绕道YearMonth。你可以简单地使用LocalDate kFilter = LocalDate.parse("Jul-2021", formatter);