/*
 * 创建日期 2005-8-2
 *
 * 作者:babe0555
 * 
 */
package test;
import java.util.ArrayList;
import java.util.Date;
import java.util.GregorianCalendar;public class DATEBEAN {
/**
 * 
 * @param Year
 * @param Month
 * @param Day
 * @param Start_Year
 * @param End_Year
 * @return
 */
public static boolean CheckDATE(
int Year,
int Month,
int Day,
int Start_Year,
int End_Year) {
boolean flag = false;
GregorianCalendar cale = new GregorianCalendar();
int i_month[] = { 1, 3, 5, 7, 8, 10, 12 };
int j = i_month.length;
ArrayList arr_month = new ArrayList();
for (int i = 0; i < j; i++) {
arr_month.add(i_month[i] + "");
}
if (Year <= End_Year && Year >= Start_Year) {
if (Month < 13 && Month > 0) {
if (arr_month.contains(Month + "")) {
if (Day < 32 && Day > 0) {
flag = true;
}
} else {
if (cale.isLeapYear(Year)) {
if (Day < 30 && Day > 0) {
flag = true;
}
} else {
if (Day < 29 && Day > 0) {
flag = true;
}
}
}
}
}
return flag;
}
/**
 * 
 * @param Year
 * @param Month
 * @param Day
 * @param Start_Year
 * @param End_Year
 * @return
 */
public static boolean CheckDATE2(
int Year,
int Month,
int Day,
int Start_Year,
int End_Year) {
boolean flag = false;
if (Year <= End_Year && Year >= Start_Year) {
Date date = new Date(Year - 1900, Month - 1, Day);
int new_Year = date.getYear() + 1900;
int new_Month = date.getMonth() + 1;
int new_Day = date.getDate();
if (new_Year == Year && new_Month == Month && new_Day == Day) {
flag = true;
}
}
return flag;
}
public static void main(String[] args) {
System.out.println(DATEBEAN.CheckDATE(2004, 2, 29, 1997, 2005));
System.out.println(DATEBEAN.CheckDATE2(2004, 2, 29, 1997, 2005));
}
}