【发布时间】:2015-02-18 16:53:51
【问题描述】:
DateTimeFormmater 似乎无法处理月份中的一位数日期:
String format = "MM/dd/yyyy";
String date = "5/3/1969";
System.out.println(new SimpleDateFormat(format).parse(date));
System.out.println(LocalDate.parse(date, DateTimeFormatter.ofPattern(format)));
在本例中,SimpleDateFormat 正确解析日期,但DateTimeFormatter 抛出异常。如果我要使用零填充日期,例如“05/03/1969”,那么两者都可以。但是,如果某月的某天或某年的月份是个位数,则DateTimeFormatter 会引发异常。
什么是正确的DateTimeFormatter 格式来解析月份和月份的一位和两位数?
【问题讨论】:
-
您解决了这个问题吗?我也在寻找一个 java8 解决方案来解析 1 或 2 位数的月份,或 2 或 4 位数的年份。
标签: java date java-8 java-time