小编Uri*_*oya的帖子

LocalDate 解析器无法将月份解析为字符串:'Aug'

我正在尝试使用 LocalDate 解析以下字符串:“2015 年 8 月 4 日”。

在尝试了 DateTimeFormatters 的一些变体之后,我在 SO 中寻找答案并发现答案中给出的一些解析示例对我不起作用。经过进一步调查,我发现 java 14 无法解析包含字符串月份的日期,例如“Jul”、“Feb”……但在 java 8 和 10 中它完美无缺。

抛出的异常是:

java.time.format.DateTimeParseException:无法在索引 3 处解析文本“2015 年 8 月 4 日”

java 14 中的 LocalDate/DateTimeFormatter 是否有任何更改?我在文档中找不到任何内容。

这是在 java 8/10 上成功打印并在 java 14 上抛出 DateTimeParseException 的代码:

  public static void main(String[] args) {
    DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd MMM yyyy");
    String anotherDate = "04 Aug 2015";
    LocalDate lds = LocalDate.parse(anotherDate, dtf);
    System.out.println(anotherDate + " , " + lds);
  }
Run Code Online (Sandbox Code Playgroud)

java datetime datetime-format

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

标签 统计

datetime ×1

datetime-format ×1

java ×1