Java 8解析星期几和时间

时间:2016-11-03 01:49:43

标签: java date parsing java-8

以下是来自用户的示例输入:

Wed 15:00

我想将其解析为一个对象,以便我使用LocalDateTime对象。这是我的代码:

String elem = "wed 15:00";
private static final DateTimeFormatter DATE_TIME_FORMATTER = DateTimeFormatter.ofPattern(
            "E H:mm"
            + "E HH:mm");
return LocalDateTime.from(DATE_TIME_FORMATTER.parse(elem));

但我收到了错误:

java.time.format.DateTimeParseException: Text 'wed 15:00' could not be parsed at index 0

这里的错误究竟是什么?

1 个答案:

答案 0 :(得分:3)

这不是一个有效的模式:

"E H:mm" + "E HH:mm"

请改为尝试:

String elem = "Wed 15:00";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("E H:mm");
return LocalDateTime.from(LocalDate.parse(elem, formatter));

另请注意,您必须指定的不仅仅是星期几和解析LocalDateTime对象的时间,还有理由:我们不知道是什么周三我们正在谈论!