将日期字符串解析为Date或DateTime

时间:2014-10-01 08:19:28

标签: java parsing date datetime jodatime

我试图从这个字符串(来自服务器)中创建一个Date或DateTime:

Wed Oct 01 00:00:00 CEST 2014

我尝试了以下方法,没有成功:

DateFormat dateParser = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
Date planDate = new DateTime(dateParser.parseObject("Wed Oct 01 00:00:00 CEST 2014"));

DateTimeFormatter formatter = DateTimeFormat.forPattern("EEE MMM dd HH:mm:ss z yyyy");
DateTime planDate = new DateTime(formatter.parseDateTime(""Wed Oct 01 00:00:00 CEST 2014""));

第一次尝试抛出ParseException,第二次尝试抛出IllegalArgumentException格式无效。由于我需要将此String与(Joda)DateTime进行比较,我真的需要解析它。

2 个答案:

答案 0 :(得分:2)

在第一种情况下,您会错过语言环境:

DateFormat dateParser = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.US);

对于第二个问题,请参阅:: This thread

答案 1 :(得分:0)

试试这个。

DateFormat dateParser = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
Date planDate =dateParser.parse("Wed Oct 01 00:00:00 CEST 2014");