在java中parsingRSS pubDate到Date对象

我怎样才能parsing一个RSS提要的pubDate到Java中的Date对象。

RSS提要中的格式:星期六,24四月2010 14:01:00 GMT

我现在所拥有的:

DateFormat dateFormat = DateFormat.getInstance(); Date pubDate = dateFormat.parse(item.getPubDate().getText()); 

但是这个代码抛出了一个ParseException和消息Unparseable date

你可以使用SimpleDateFormat类来定义你想要parsing的date格式:

 DateFormat formatter = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz"); Date date = formatter.parse("Sat, 24 Apr 2010 14:01:00 GMT"); 

此外,对于非英文Locale ,请务必在使用英文parsingdate时使用以下内容:

 new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.ENGLISH); 

如果您需要符合RFC822的date,请尝试以下操作:

 DateFormat dateFormatterRssPubDate = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z", Locale.ENGLISH); 

对于可以使用Java 8 LocalDateTime的幸运者:

 LocalDateTime localDateTime = LocalDateTime.from(DateTimeFormatter.RFC_1123_DATE_TIME.parse("Sat, 24 Apr 2010 14:01:00 GMT"));