http header "last-modified" 的格式错误的 joda 日期时间?
Malformatted joda datetime for http header "last-modified"?
我正在尝试解析一个简单的日期时间,但只是遇到了一个异常。为什么?
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)
,这意味着不仅 date fromat 本身,而且所有相关词都应使用德语语言环境。
所以 parseDateTime
方法将不会期望 "Friday" 和 "Fri",而是 "Freitag" 和 "Fre"。如果你想解析像 "Fri, 08 Aug 2014 12:32:12 GMT"
这样的字符串,我建议你坚持使用 Locale.ENGLISH
设置
我正在尝试解析一个简单的日期时间,但只是遇到了一个异常。为什么?
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)
,这意味着不仅 date fromat 本身,而且所有相关词都应使用德语语言环境。
所以 parseDateTime
方法将不会期望 "Friday" 和 "Fri",而是 "Freitag" 和 "Fre"。如果你想解析像 "Fri, 08 Aug 2014 12:32:12 GMT"
Locale.ENGLISH
设置