字符串转LocalDateTime出现异常:java.time.format.DateTimeParseException: Text '1900-01-01 00:00:00' could not be parsed at index 4
原代码:
DateTimeFormatter dfo = DateTimeFormatter.ofPattern("yyyy:MM:dd HH:mm:ss");
LocalDate localDate = LocalDate.parse("1900-01-01 00:00:00", dfo);
LocalDateTime localDateTime = localDate.atStartOfDay();
System.out.println(localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
错误原因: 格式化的dfo引用不能放入LocalDate.parse("1900-01-01 00:00:00", dfo)中,要把格式化方法直接放入LocalDate.parse()中
修改代码 :
//DateTimeFormatter dfo = DateTimeFormatter.ofPattern("yyyy:MM:dd HH:mm:ss");
LocalDate localDate = LocalDate.parse("1900-01-01 00:00:00", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
LocalDateTime localDateTime = localDate.atStartOfDay();
System.out.println(localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
博客内容讲述了在Java编程中,尝试将字符串'1900-01-0100:00:00'转换为LocalDateTime时遇到DateTimeParseException的问题。错误源于日期时间格式不匹配。修复方法是确保DateTimeFormatter的模式与输入字符串一致,即使用'yyyy-MM-ddHH:mm:ss'作为格式。修正后的代码成功将字符串转换为LocalDateTime。

1万+

被折叠的 条评论
为什么被折叠?



