2014-02-18 153 views
-2

我有一个如何日期字符串转换为日期数据类型

String dateString = "Fri Feb 14 00:00:00 IST 2014";

我需要时间数据类型一样2014-02-14输出。

这里是投掷Parse exception的代码。

需要帮助。

public static void main(String args[]){ 
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); 

    String dateString = "Fri Feb 14 00:00:00 IST 2014"; 

     Date convertedDate = null; 
     try { 
      convertedDate = df.parse(dateString); 
     } catch (ParseException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     System.out.println(convertedDate); 

} 
+1

显然,'周五2月14日00:00:00 IST 2014'不匹配'YYYY-MM-DD HH:MM:ss'格式...有关更多信息,请参阅http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html。 – sp00m

回答

0

你必须dateString转换为匹配Date格式,然后您可以在Date格式化你什么都想要的格式。

试试这个

DateFormat df1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); 
    DateFormat df2 = new SimpleDateFormat("EEE MMM dd hh:mm:ss z yyyy"); 
    String dateString = "Fri Feb 14 00:00:00 IST 2014"; 
    Date date=df2.parse(dateString); // convert stringDate to matching Date format 
    System.out.println(df1.format(date)); 

输出地说:

2014-02-14 12:00:00 
1

基点 - 输入字符串应该与日期模式

募集解析异常匹配的becasue错误的花样,使用此日期模式 - EEE MMM dd hh:mm:ss z yyyy

DateFormat df = new SimpleDateFormat("EEE MMM dd hh:mm:ss z yyyy"); 
0

试试这个:

public static void main(String[] args) { 
    DateFormat df = new SimpleDateFormat("EEE MMM dd hh:mm:ss z yyyy"); 

    String dateString = "Fri Feb 14 00:00:00 IST 2014"; 

    Date convertedDate = null; 
    try { 
     convertedDate = df.parse(dateString); 
    } catch (ParseException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
    System.out.println(convertedDate); 
} 
+0

这给出了相同的输出...我需要类似2014-02-14 – madhu

+0

我不这么认为,我检查了它,并且它工作正常。我想你错过了一些东西。 – Salah

相关问题