a.after(b)返回一个boolean,如果a的时间在b之后(不包括等于)返回true
b.before(a)返回一个boolean,如果b的时间在a之前(不包括等于)返回true
/** * 檢查日期格式 */
public boolean validateDateFormat(String date)
{
format.setLenient(false);
try{
format.parse(date);
}catch(Exception e){
return false;
}
return true;
}
/** * 檢查日期格式 */
public boolean validateDateFormat(Date date)
{
String dataString = new SimpleDateFormat("yyyyMMdd").format(date);
return validateDateFormat(dataString);
}
/* * 檢查輸入的日期是否小於今天,如果是則丟出錯誤訊息 */
public void validateDateWithToday(Date validateDate, Errors errors, String commandName, String errorMessge)
{
String validateDateString = new SimpleDateFormat("yyyyMMdd").format(validateDate);
validateDateWithToday( validateDateString, errors, commandName, errorMessge);
}
/*** 檢查endDate是否小於startDate,如果是則丟出錯誤訊息 */
public void validateDateWithDate(String startDate, String endDate, Errors errors, String commandName, String errorMessage)
{
try {
Date schedSdate1 = format.parse(startDate);
Date schedEdate1 = format.parse(endDate);
Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
c1.setTime(schedSdate1);
c2.setTime(schedEdate1);
if(c2.before(c1)){
errors.reject(commandName, errorMessage);
}
} catch (ParseException e) {
e.printStackTrace();
}
}