ParseException:Java 中无法解析的日期
ParseException: Unparseable date in Java
我需要将字符串(日期格式)转换为时间戳。
一开始我是这样的。
private Timestamp dateConverter(String date) {
Timestamp timestamp = null;
SimpleDateFormat dateFormat = new SimpleDateFormat("dd MMM yyyy HH:mm");
Date parsedDate = null;
try {
parsedDate = dateFormat.parse(date);
timestamp = new java.sql.Timestamp(parsedDate.getTime());
} catch (ParseException e) {
e.printStackTrace();
}
return timestamp;
}
结果是: ParseException: Unparseable date: "16 Jan 2020 11:02"
我尝试了另一种方式:
private Timestamp dateConverter(String date) {
DateTimeFormatter f = DateTimeFormatter.ofPattern("dd MMM yyyy HH:mm");
LocalDateTime ldt = LocalDateTime.parse(date , f);
return Timestamp.valueOf(ldt);
}
此时我遇到了 DateTimeParseException: Text '16 Jan 2020 11:02' could not be parsed at index 3
的内部服务器错误
您的模式无法知道您所在月份的语言是什么,英语、法语、阿拉伯语、俄语、普通话...,要解决此问题,您必须像这样使用 Locale
来帮助格式化程序:
DateTimeFormatter f = DateTimeFormatter.ofPattern("dd MMM yyyy HH:mm")
.withLocale(new Locale("us"));
LocalDateTime ldt = LocalDateTime.parse("16 Jan 2020 11:02" , f); // 2020-01-16T11:02
我需要将字符串(日期格式)转换为时间戳。
一开始我是这样的。
private Timestamp dateConverter(String date) {
Timestamp timestamp = null;
SimpleDateFormat dateFormat = new SimpleDateFormat("dd MMM yyyy HH:mm");
Date parsedDate = null;
try {
parsedDate = dateFormat.parse(date);
timestamp = new java.sql.Timestamp(parsedDate.getTime());
} catch (ParseException e) {
e.printStackTrace();
}
return timestamp;
}
结果是: ParseException: Unparseable date: "16 Jan 2020 11:02"
我尝试了另一种方式:
private Timestamp dateConverter(String date) {
DateTimeFormatter f = DateTimeFormatter.ofPattern("dd MMM yyyy HH:mm");
LocalDateTime ldt = LocalDateTime.parse(date , f);
return Timestamp.valueOf(ldt);
}
此时我遇到了 DateTimeParseException: Text '16 Jan 2020 11:02' could not be parsed at index 3
您的模式无法知道您所在月份的语言是什么,英语、法语、阿拉伯语、俄语、普通话...,要解决此问题,您必须像这样使用 Locale
来帮助格式化程序:
DateTimeFormatter f = DateTimeFormatter.ofPattern("dd MMM yyyy HH:mm")
.withLocale(new Locale("us"));
LocalDateTime ldt = LocalDateTime.parse("16 Jan 2020 11:02" , f); // 2020-01-16T11:02