我正在开发一个项目,我需要根据长度和模式验证多个日期。我正在使用简单的日期格式,并发现许多问题。我的要求是严格允许日期字符串匹配“yyyy/MM/dd”和严格的10个字符。简单日期格式问题Java
以下代码未给出各种测试输入字符串的预期结果。
public static boolean checkformat(String dateString){
boolean flag = false;
Date d1 = null;
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
format.setLenient(false);
try {
d1 = format.parse(dateString);
flag=true;
} catch (ParseException ex) {
ex.printStackTrace();
return false;
}
return flag;
}
上面的代码返回关于各种输入,比如“99/03/1”“真”(应0099/03/01)和99/1/1(应当0099/01/1) 。由于输入的字符串不是从一个来的,所以我不能执行验证,然后再将它们传递给此方法。请建议对dateformat(“yyyy/MM/dd”)采取非常严格的措施。
我已经尝试过这个实现,并且它没有像上面提到的输入那样工作。 – Kiran