dd-MMM-yy格式的java.time.format.DateTimeParseException

时间:2020-09-10 23:04:04

标签: java

我现在尝试了几个小时,将这个String解析为LocalDate,但我只是找不到我的模式错误的地方。

 public void parseDate() {
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd'-'MMM'-'yy");
        LocalDate date = LocalDate.parse("05-Sep-20", formatter);
}

我收到以下异常:

java.time.format.DateTimeParseException: Text '05-Sep-20' could not be parsed at index 3

使用模式dd'-'MMMM'-'yydd'-'MM'-'yy时效果很好,但不适用于MMM

我在破折号附近使用了单引号,因为否则我将在另一个索引处遇到解析异常。

我正在使用Java1.8和java.time

1 个答案:

答案 0 :(得分:0)

可能是您的语言环境。试试这个:

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd'-'MMM'-'yy", Locale.US);
LocalDate date = LocalDate.parse("05-Sep-20", formatter);

ref:https://stackoverflow.com/a/44928297