首页 > 解决方案 > Jodatime畸形即使看起来正确

问题描述

我有这段代码

DateTimeFormatter dtf = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss Z");
DateTime dateNow = dtf.parseDateTime(new DateTime().toString());
String registerDateStr = dateNow.toString();

但是当我运行它时,它会显示格式错误的日期:

java.lang.IllegalArgumentException:无效格式:“2019-06-13T17:57:47.420+08:00”格式错误为“.420+08:00”

形成的日期对我来说似乎正确?我在格式上做错了吗?

标签: javajodatime

解决方案


您的格式没有指定毫秒,并且在时区信息之前有一个不需要的空格。

这种格式将起作用:

DateTimeFormatter dtf = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss.SSSZ");

推荐阅读