Java 日期验证,包括各月的天数

Java 日期验证,包括各月的天数,java,validation,date,datetime,Java,Validation,Date,Datetime,进行日期验证的最佳方法是什么,包括检查各个月(包括闰年)的月数是否在1到12之间,天数是否在1到最大天数之间?您可以使用此方法检查日期是否有效,您可以根据需要对其进行调整(删除无用信息) try { int dayInt = Integer.parseInt(day); int monthInt = Integer.parseInt(month); int yearInt = Integer.parseInt(year);

进行日期验证的最佳方法是什么,包括检查各个月(包括闰年)的月数是否在1到12之间,天数是否在1到最大天数之间?

您可以使用此方法检查日期是否有效,您可以根据需要对其进行调整(删除无用信息)

try {
            int dayInt = Integer.parseInt(day);
            int monthInt = Integer.parseInt(month);
            int yearInt = Integer.parseInt(year);
            Calendar cal = new GregorianCalendar();
            cal.setLenient(false);
            cal.set(yearInt, monthInt-1, dayInt);
            //this will throw an exception if the date is not valid:
            cal.getTime();
        } catch (Exception e) {         
            System.out.println("Invalid date entered.", e);
}

另请查看,以了解更多以压缩和更清晰的方式验证日期的方法:

Calendar cal = Calendar.getInstance();
try {
    cal.setTime(theConcernedDate);
}
catch (Exception e) {
  System.out.println("Invalid date");
}

谢谢我不太喜欢使用异常来验证东西,但我喜欢这种快速的方式