任何人都可以告诉我以下解决方案: 我在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