这就是我的尝试....
DateTimeFormatter formatter = DateTimeFormat.forPattern("EEE, dd MMM yyyy HH:mm:ss Z");
dateTime = formatter.parseDateTime(pubDate);
return dateTime;
并且结果是:(
java.lang.IllegalArgumentException: Invalid format: "Sat, 09 Apr 2016 09:43:00 +0200"
at org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:945)
我为每个文档尝试了很多其他格式化选项,但仍然没有运气
答案 0 :(得分:3)
您的默认Locale
不得为英文(您正在解析的一周中的某个月份和星期几是英文)。您可以使用DateTimeFormatter.withLocale(Locale)
覆盖本地区域设置,例如
String pubDate = "Sat, 09 Apr 2016 09:43:00 +0200";
DateTimeFormatter formatter = DateTimeFormat.forPattern("EEE, dd MMM yyyy HH:mm:ss Z");
DateTime dateTime = formatter.withLocale(new Locale("en_US")).parseDateTime(pubDate);
System.out.println(dateTime);