2014-02-10 52 views
0

我有以下代碼:日期轉換工作不正常

DateFormat dateFormat = new SimpleDateFormat(SQL_SERVER_DATE_FORMAT); 
Date startDate; 

startDate = (Date) dateFormat.parse(some_string_represents_date_received_from_sql_server); 

其中SQL_SERVER_DATE_FORMAT是:

public static final String SQL_SERVER_DATE_FORMAT = "yyyy-mm-dd'T'HH:mm:ss"; 

出於某種原因,當 some_string_represents_date_received_from_sql_server = '2014-02-05T12:15:59.417'我得到這個錯誤轉化爲1388916959000蜱這意味着Sun Jan 05 12:15:59 GMT+02:00 2014

,當我有 some_string_represents_date_received_from_sql_server = '2014-01-30T16:30:00.437'我得到這個正確轉換爲1391092200000蜱這意味着Thu Jan 30 16:30:00 GMT+02:00 2014

任何想法?

+3

'公共靜態最終字符串SQL_SERVER_DATE_FORMAT =「yyyy-MM-dd'T'HH:mm:ss」;' –

回答

5

嘗試DateFormat解析爲public static final String SQL_SERVER_DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss";,而不是public static final String SQL_SERVER_DATE_FORMAT = "yyyy-mm-dd'T'HH:mm:ss";

+0

男人,我堅持了幾個小時。謝謝Trushit和Artoo。 – dsb

5

在你的日期格式,你指定分鐘(毫米),而不是個月(MM)。