2014-10-09 25 views
-1
String dateFromDb = "04-OCT-14 03.47.24.342000000 PM"; 
SimpleDateFormat datetimeFormatter1 = new SimpleDateFormat("MMM dd,yyyy HH:mm:ss",Locale.ENGLISH); 
Date Date1 = datetimeFormatter1.parse(dateFromDb); 
Timestamp fromTS1 = new Timestamp(Date1.getTime()); 

雖然轉換則拋出該異常:字符串轉換 「04-OCT-14 03.47.24.342000000 PM」 到java.util.Date

java.text.ParseException:無法解析的日期:「04- OCT-14 03.47.24.342000000 PM「在java.text.DateFormat.parse(DateFormat.java:337)

任何人都可以幫忙嗎?

+1

是什麼讓你認爲'04-OCT-14 03.47.24.342000000 PM'是可解析與'MMM DD,YYYY '? – BackSlash 2014-10-09 08:02:47

+0

你的模式是錯誤的。看看[SimpleDateFormat javadoc](http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html)。 – 2014-10-09 08:07:13

+0

除了你的日期格式我不認爲有任何TimeStamp的構造函數只接受時間 – 2014-10-09 08:07:21

回答

3

您的dateformater配置是錯誤的。

使用此模式:

SimpleDateFormat datetimeFormatter1 = new SimpleDateFormat("dd-MMM-yyyy HH.mm.ss.SSSSS aa",Locale.ENGLISH); 

欲瞭解更多信息,請參見SimpleDateFormat的的javadoc