【发布时间】:2014-11-29 15:47:54
【问题描述】:
如何将日期fromat从“dd MMM yyyy”转换为“yyyy-MM-dd”?
我知道我必须使用SimpleDatFormat,但它不起作用,类似问题的任何解决方案也没有。
我想格式化一个日期“2015 年 12 月 18 日”,但我得到了这个
java.text.ParseException: Unparseable date: "18 Dec 2015"
这是我的代码:
public String parseDate(String d) {
String result = null;
Date dateObject = null;
SimpleDateFormat dateFormatter = new SimpleDateFormat("dd MMM yyyy");
try {
dateObject = dateFormatter.parse(d);
dateFormatter.applyPattern("yyyy-MM-dd");
result = dateFormatter.format(dateObject);
} catch (ParseException e) {
System.out.println(e);
}
return result;
}
【问题讨论】:
-
您的默认语言环境是什么?试试
SimpleDateFormat dateFormatter = new SimpleDateFormat("dd MMM yyyy", Locale.US); -
@SotiriosDelimanolis 我的日期字符串没有破折号
-
@ZouZou 我的语言环境是波兰
-
仔细阅读您的例外情况。
-
@SotiriosDelimanolis 好的,我修正了一个错字。我确定将“2015 年 12 月 18 日”作为输入,我得到
java.text.ParseException: Unparseable date: "18 Dec 2015"异常
标签: java date simpledateformat