2016-08-31 43 views
0

得到以下代碼的異常,如果我使用parseDate()方法,不會出現異常,我不明白是什麼原因。異常無法解析日期,同時使用DateUtils類的parseDateStrictly()方法

異常線程 「main」 java.text.ParseException:無法解析 日期:在 org.apache.commons.lang3.time.DateUtils 00:2012年3月22日:00:00。 parseDateWithLeniency(DateUtils.java:336) 在 org.apache.commons.lang3.time.DateUtils.parseDateStrictly(DateUtils.java:286)

public static void main(String args[]) throws Exception 
    { 
     String testDate="03/22/2012:00:00:00"; 
     SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");  
     System.out.println(simpleDateFormat.format(DateUtils.parseDateStrictly(testDate, new String[]{"MM/dd/yyyy:hh:mm:ss","MM-dd-yyyy","MM/dd/yyyy", 
       "yyyy-MM-dd hh:mm:ss","yyyy-MM-dd","yyyy-MM-dd HH:mm:ss"})));  
    } } 

回答

1

你的格式圖案必須是「MM/DD/YYYY:HH:MM:SS」。

小寫HH如果Hour in am/pm (1-12)

大寫HH爲Hour in day (0-23)

有關詳細的信息請參閱SimpleDateFormat

+0

由於@Jens的的Javadoc。現在明白了。 – b22