我正在尝试使用 ThreeTenBP 将日期字符串从服务器转换为日期时间。我的方法如下所示:
String toDateTime(String dateString) {
DateTimeFormatter formatter = new DateTimeFormatterBuilder().appendPattern("M/d/yyyy h:mm a").toFormatter();
ZonedDateTime dateTimeWithZone = ZonedDateTime.parse(dateString, formatter);
return dateTimeWithZone.toString();
}
但是,我遇到了一个异常(exception):
DateTimeParseException: Text '2015-07-21T09:26:06.260-05:00' could not be parsed at index 4
我做错了什么?
最佳答案
您的模式以“M/”开头,表示月份。您的实际日期字符串以“2015-”开头,这显然是年份。实际上,该日期看起来像是 ISO 8601 格式,并且像“yyyy-MM-dd'T'HH:mm:ss.SSSX”这样的模式会匹配。
关于java - ThreeTenBP DateTimeParseException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31542758/