我有一个字符串日期“ 31-Dec”和模式“ dd-MMM”。接下来的代码
DateFormat formatter = new SimpleDateFormat(pattern); formatter.setTimeZone(timeZone); formatter.parse(input);
产生异常
java.text.ParseException: Unparseable date: "31-Dec" at java.text.DateFormat.parse(DateFormat.java:337)....
我做错什么了?
谢谢!
一个问题可能是您Locale不是英语。试试这个:
Locale
DateFormat formatter = new SimpleDateFormat("dd-MMM", Locale.ENGLISH); try { System.out.println(formatter.parse("31-Dec")); } catch (ParseException e) { e.printStackTrace(); }
这为我返回:
1970年12月31日星期四00:00:00欧洲中部时间
由于日期字符串中缺少年份,因此您会看到它会自动插入1970为年份。
1970