如何解析字符串“Mon Oct 22 03:00:26 +0000 2012”

时间:2014-02-10 00:21:20

标签: java date

如何解析以下字符串到日期

  

Mon Oct 22 03:00:26 +0000 2012

我尝试过MMM dd HH:mm:ss yyyy,但它不起作用。我知道我错过了一些东西但却找不到。

  String b="Mon Oct 22 03:00:26 +0000 2012";
  DateFormat a = new SimpleDateFormat("MMM dd HH:mm:ss yyyy");
  Date d=(Date)a.parse(b)

2 个答案:

答案 0 :(得分:3)

我建议使用EEE MMM dd HH:mm:ss Z yyyy代替HH:mm:ss yyyy

修改

具体来说,您的代码是:

String b="Mon Oct 22 03:00:26 +0000 2012";
  DateFormat a = new SimpleDateFormat("MMM dd HH:mm:ss Z yyyy");
  Date d=(Date)a.parse(b)

评论后修改:

String b="Mon Oct 22 03:00:26 +0000 2012";
  DateFormat a = new SimpleDateFormat("MMM dd HH:mm:ss Z yyyy", Locale.getDefault());
  Date d=(Date)a.parse(b)

答案 1 :(得分:1)

尝试做这样的事情:

SimpleDateFormat formatter = new SimpleDateFormat("EEEE, MMM dd, yyyy HH:mm:ss a");
String dateInString = "Friday, Jun 7, 2013 12:10:56 PM";        

try {
    Date date = formatter.parse(dateInString);
    System.out.println(date);
    System.out.println(formatter.format(date));
} catch (ParseException e) {
    e.printStackTrace();
}

参考:How to Convert String to Date in Java