The value 12/16/2022, 1:33 pm
looks to match to expected format pattern M/d/yyyy, h:mm a
, what is incorrect at index 17
?
Java unit test:
@Test
public void testLocalDateTime_shortDateTimePattern() {
String pattern = "M/d/yyyy, h:mm a";
System.out.println(pattern);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(pattern);
String dateString = "12/16/2022, 1:33 pm";
System.out.println(dateString);
LocalDateTime result = LocalDateTime.parse(dateString, formatter);
System.out.println(result);
}
Console output:
M/d/yyyy, h:mm a
12/16/2022, 1:33 pm
Text '12/16/2022, 1:33 pm' could not be parsed at index 17
java.time.format.DateTimeParseException: Text '12/16/2022, 1:33 pm' could not be parsed at index 17
at java.base/java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:2046)
at java.base/java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1948)
at java.base/java.time.LocalDateTime.parse(LocalDateTime.java:492)