我正在尝试解析一个简单的日期时间并且只是获得异常。为什么呢?
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)
答案 0 :(得分:1)
您的示例使用.withLocale(Locale.GERMAN)
,这意味着不仅仅是日期本身,而且所有相关的字词都应该是德语区域。
所以parseDateTime
方法不会期望"星期五"和"周五"但是" Freitag"和" Fre" respectivly。我建议你坚持Locale.ENGLISH
设置,如果你想解析像#34;星期五,2014年8月8日12:32:12 GMT"