我正在尝试解析字符串时间戳 LocalDateTime
.
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSSX");
String requestTimestamp = "2020-11-27 18:04:31+0";
String endDate ="2020-12-25 23:59:59+0";
final Long between = ChronoUnit.MINUTES.between(LocalDateTime.parse(endDate,formatter), LocalDateTime.parse(requestTimestamp,formatter));
正在获取以下异常:
Caused by: java.time.format.DateTimeParseException: Text '2020-12-25 23:59:59+0' could not be parsed at index 19
at java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:1949)
at java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1851)
at java.time.LocalDateTime.parse(LocalDateTime.java:492)
你能帮我一下我的密码有什么问题吗。为什么我要 DateTimeParseException
?
1条答案
按热度按时间wpx232ag1#
你的代码有两个问题。
和你的模式一样,
yyyy-MM-dd HH:mm:ss.SSSX
,输入不包含2020-11-27 18:04:31+0
.sss部分(秒的分数)+0
你的意见必须是+00
用于区域偏移。如果区域偏移量为零,则输入形式为零2020-11-27 18:04:31Z
带图案yyyy-MM-dd HH:mm:ssX
下面是工作代码,加上最后两分钱,如果您可以控制输入,建议您使用预定义的格式化程序。我觉得等一下就可以满足你的需要了。