任何人都可以告訴我以下解決方案: 我在java.I中有一個Util.Date對象,想驗證輸入的日期。我使用所需的格式解析日期對象。如何在Java中驗證Date對象
例如,格式爲「MM/dd/yyyy」,輸入日期爲「23/12/2010」 對於這個日期,我沒有得到任何解析異常,但日期調整爲「11/12/2011「這不應該發生在我的情況。而是我想拋出錯誤信息。
請儘快幫助我。
在此先感謝
任何人都可以告訴我以下解決方案: 我在java.I中有一個Util.Date對象,想驗證輸入的日期。我使用所需的格式解析日期對象。如何在Java中驗證Date對象
例如,格式爲「MM/dd/yyyy」,輸入日期爲「23/12/2010」 對於這個日期,我沒有得到任何解析異常,但日期調整爲「11/12/2011「這不應該發生在我的情況。而是我想拋出錯誤信息。
請儘快幫助我。
在此先感謝
在DateFormat類,你必須重新設置 「網開一面」 標誌,即
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
sdf.setLenient(false);
. . .
sdf.parse(mydate, pos);
必須設置的SimpleDateFormat你的 「手下留情」 模式爲false:
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
sdf.setLenient(false);
默認情況下,它容忍一些錯誤,並嘗試以某種方式解釋它們。
根據您的格式表達,我們可以利用的SimpleDateFormat調整月份,日期和年份,代碼如下
public class SimpleDateFormatString2DateParse {
public static void main(String[] args) {
SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
try {
Date date = formatter.parse("11/12/2011");
System.out.println("Date is : " + date);
} catch (Exception e) {
e.printStackTrace();
}
}
}
----- -----輸出
日期是:星期六Nov 12 00:00:00 PST 2011
非常感謝。它按我的意願工作。 – asd 2010-07-15 09:27:03