Java8解析星期几和时间
以下是用户输入的示例:Java8解析星期几和时间,java,date,parsing,java-8,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
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
这里的错误到底是什么?这不是一个有效的模式:
"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
对象时,您需要指定的不仅仅是一周中的哪一天和时间,这是很合理的:我们不知道我们在谈论什么星期三 这不是有效的模式:
"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
对象时,您需要指定的不仅仅是一周中的哪一天和时间,这是很合理的:我们不知道我们在谈论什么星期三 那么我如何处理解析wed1:00
和wed11:00
?您发布的代码一开始就无效。您想返回什么类型?我想返回一个LocalDateTime
对象,但我不确定该对象是否适合使用。我尝试了上面的模式,但仍然得到了相同的错误注意,字符串必须是wed15:00
,大写字母W
。我不太清楚为什么要返回一个LocalDateTime
…解析LocalDateTime
对象需要指定的不仅仅是一周中的哪一天和时间。我真的,真的认为你必须回到绘图板上,重新思考你想要完成什么,以及LocalDateTime
是否是它的最佳数据类型。那么我如何处理Wed1:00
和Wed11:00
的解析?你发布的代码一开始就无效。您想返回什么类型?我想返回一个LocalDateTime
对象,但我不确定该对象是否适合使用。我尝试了上面的模式,但仍然得到了相同的错误注意,字符串必须是wed15:00
,大写字母W
。我不太清楚为什么要返回一个LocalDateTime
…解析LocalDateTime
对象需要指定的不仅仅是一周中的哪一天和时间。我真的,真的认为您必须回到绘图板上,重新思考您试图完成的任务,以及LocalDateTime
是否是最好的数据类型。