2012-11-19 118 views
1

我想轉換Datetime日曆,而將我面對java.text.ParseException:無法解析的日期: 「2012年1月11日08:00:00」

java.text.ParseException: Unparseable date: "01/11/2012 08:00:00"

這裏是我的示例代碼:

Calendar cal = Calendar.getInstance(); 
SimpleDateFormat formatter = new SimpleDateFormat("dd-MMM-yyyy H:mm:ss", new Locale("es", "ES")); 

cal.setTime(formatter.parse(Form.getRequestPortDate()+" "+.getRequestTimeDD()+":00")); 

注:Form.getRequestPortDate()+" "+Form.getRequestTimeDD()+":00")價值爲01/11/2012 08:00:00

回答

2

SimpleDateFormat formatter = new SimpleDateFormat("dd-MMM-yyyy H:mm:ss", new Locale("es", "ES"));

這意味着您將只能以dd-MMM-yyyy H:mm:ss格式解析日期。

如果您收到的格式的日期「2012年1月11日08:00:00」,那麼你應該使用這個字符串您SimpleDateFormatter內:

"dd/MM/yyyy HH:mm:ss" 
+0

感謝。它的工作很好 – user1802047

+0

@ user1802047你總是歡迎:) – Abubakkar

1

更改日期模式dd/MM/yyyy HH:mm:ss

Calendar cal = Calendar.getInstance(); 
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss", new Locale("es", "ES")); 
1

您的日期是 「01/11/2012 08:00:00」,而你正在嘗試分析應該是格式的字符串

"dd-MMM-yyyy H:mm:ss 

變化new SimpleDateFormat("dd-MMM-yyyy H:mm:ss", new Locale("es", "ES"));

new SimpleDateFormat("dd/MMM/yyyy H:mm:ss", new Locale("es", "ES")); 
1

您的格式錯誤

這個日期:2012年1月11日08:00:00 格式應該是:dd/MM/yyyy HH:mm:ss

Calendar cal = Calendar.getInstance(); SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss", new Locale("es", "ES")); 
如果要使用現有的格式

,該日期

01/SEP/2012 8:00:00 (dd-MMM-yyyy H:mm:ss) 
相關問題