2016-08-23 132 views
-1

我想字符串轉換爲日期我的JDBC program.I曾嘗試以下方法轉換字符串到日期JAVA

 DateFormat Formatter=null; 
     Date convertedDate=null; 
     Formatter=new SimpleDateFormat("DD-MMM-YYYY",Locale.ENGLISH); 
     try { 
      convertedDate=(Date)Formatter.parse(date); 
     } catch (ParseException e1) { 
      // TODO Auto-generated catch block 
      e1.printStackTrace(); 
     } 
     java.sql.Date sqlDate=new java.sql.Date(convertedDate.getTime()); 
     System.out.println(date); 
     System.out.println(convertedDate); 

我現在面臨的問題是,例如,如果我傳遞'30 - NOV-2001'作爲參數,當我使用DateFormat將其轉換爲Date並將其存儲在convertedDate中時,我得到「Sun Dec 31 00:00:00 IST 2000」作爲明顯錯誤的輸出。所以請幫助我在這。

+3

與格式化嘗試=新的SimpleDateFormat(」 DD-MMM-YYYY」,Locale.ENGLISH); – SpringLearner

+2

[如同格式化,請檢查您使用的格式是什麼意思...](http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html) – SomeJavaGuy

回答

2

你需要使用"dd-MMM-yyyy"

DateFormat Formatter=null; 
     Date convertedDate=null; 
     Formatter=new SimpleDateFormat("DD-MMM-YYYY",Locale.ENGLISH); 
     try { 
      convertedDate=(Date)Formatter.parse(date); 
     } catch (ParseException e1) { 
      // TODO Auto-generated catch block 
      e1.printStackTrace(); 
     } 
     java.sql.Date sqlDate=new java.sql.Date(convertedDate.getTime()); 
     System.out.println(date); 
     System.out.println(convertedDate); 

d表示天,在今年 d表示天在一個月

Oracle docs更多信息

+0

謝謝它的作品:) –

+0

@SaiSankalp我很高興 – SpringLearner

+0

是的,我接受了答案。再次感謝您的幫助:) –