1

如何将日期转换(Mon Jan 12 00:00:00 IST 2015)为格式MM.dd.yyyydd.MM.yyyy

我尝试使用以下方法

    String dateStr = "Mon Jan 12 00:00:00 IST 2015";

    DateFormat formatter = new SimpleDateFormat("E MMM dd HH:mm:ss Z yyyy");
    System.out.println(formatter.format(dateStr));

但是得到了,

Exception in thread "main" java.lang.IllegalArgumentException: 
Cannot format given Object as a Date
4

2 回答 2

5

您必须将字符串解析为 Date 然后格式化该 Date

String dateStr = "Mon Jan 12 00:00:00 IST 2015";

DateFormat formatter = new SimpleDateFormat("E MMM dd HH:mm:ss Z yyyy");
DateFormat formatter1 = new SimpleDateFormat("dd.MM.yyyy");
System.out.println(formatter1.format(formatter.parse(dateStr)));

演示

于 2015-05-31T18:33:13.490 回答
3
String dateStr = "Mon Jan 12 00:00:00 IST 2015";

首先,您必须将字符串解析为日期:

DateFormat parser = new SimpleDateFormat("E MMM dd HH:mm:ss Z yyyy");
Date date = parser.parse(dateStr);

然后你可以格式化它:

DateFormat formatter = new SimpleDateFormat("dd.MM.yyyy");
System.out.println(formatter.format(date));
于 2015-05-31T18:33:45.853 回答