joda 日期时间解析器错误
我使用 jodatime 来解析日期时间字符串,如下所示:
public static void main(String[]args){ String s ="16-Jul-2009 05:20:18 PDT"; String patterns = "dd-MMM-yyyy HH:mm:ss z"; DateTimeFormatter fm = DateTimeFormat.forPattern(patterns); DateTime d=fm.parseDateTime(s); System.out.println(d); }
我明白出了
Exception in thread "main" java.lang.IllegalArgumentException: Invalid format: "16-Jul-2009 05:20:18 PDT" is malformed at "PDT" at org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:683)
什么问题吗?如何正确解析时区?
I use jodatime to parse date time strings as follows:
public static void main(String[]args){ String s ="16-Jul-2009 05:20:18 PDT"; String patterns = "dd-MMM-yyyy HH:mm:ss z"; DateTimeFormatter fm = DateTimeFormat.forPattern(patterns); DateTime d=fm.parseDateTime(s); System.out.println(d); }
I get
Exception in thread "main" java.lang.IllegalArgumentException: Invalid format: "16-Jul-2009 05:20:18 PDT" is malformed at "PDT" at org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:683)
what's wrong? how to parse the timezone properly?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
来自
DateTimeFormat
javadoc :最好的选择是回退到
SimpleDateFormat
,然后基于Date#getTime 构造
。DateTime
()From the
DateTimeFormat
javadoc:Your best bet is to fall back to
SimpleDateFormat
and then constructDateTime
based onDate#getTime()
.