我正在尝试解析一个简单的日期时间,但遇到了异常。为什么?
DateTimeFormat.forPatter("E, dd MMM yyyy HH:mm:ss Z").withLocale(Locale.GERMAN)
.withOffsetParsed().parseDateTime("Fri, 08 Aug 2014 12:32:12 GMT");
结果:
java.lang.IllegalArgumentException: Invalid format: "Fri, 08 Aug 2014 12:32:12 GMT" is malformed at "i, 08 Aug 2014 12:32:12 GMT"
at org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:899)
最佳答案
您的示例使用 .withLocale(Locale.GERMAN)
这意味着不仅日期 fromat 本身,而且所有相关单词都应该采用德语语言环境。
因此 parseDateTime
方法预计不是“Friday”和“Fri”,而是“Freitag”和“Fre”。如果您想解析类似“Fri, 08 Aug 2014 12:32:12 GMT”的字符串,我建议您坚持使用 Locale.ENGLISH
设置
关于java - http header "last-modified"的 joda 日期时间格式错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32007700/