java如何判断是否为有效的年月日

输入一个日期
判断这个日期是否有效

年 大于 1900
月 大于0,小于13
日 if(月=1,3,5,7,8,10,12){日大于1小于等于31};
else if{月=4,6,9,11}{日大于1小于等于30};
else if(年是润年){日大于1小于等于29};
else {日大于1小于等于28}

闰年的判断公式如下:能被4整除且不能被100整除(year%4==0&&year&&100!=0)
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-08-01
月和日还比较好说,
月-不能大于12,日-不能大于31。
但这个年就不一定了,以前看的一部电影《时光机器》,主角直接回到80W年后,那么就会有800W,8000W。。。。年以后。。
所以这个年份应该没有具体的约束。
呵呵。。。
第2个回答  2009-08-01
SimpleDateFormat df = null;
Date date = null;
df = new SimpleDateFormat("yyyyMMdd");
try {
date = df.parse(strDate);
} catch (ParseException pe) {
//如果能走到这里,就说明日期无效。
}
第3个回答  2009-08-01
正则表达式

java如何判断是否为有效的年月日
月 大于0,小于13 日 if(月=1,3,5,7,8,10,12){日大于1小于等于31};else if{月=4,6,9,11}{日大于1小于等于30};else if(年是润年){日大于1小于等于29};else {日大于1小于等于28} 闰年的判断公式如下:能被4整除且不能被100整除(year%4==0&&year&&100!=0)...

使用Java如何验证所以日期是否正确?
Java为了支持多语言,没有固定的日期格式。你需要根据自己的需要指定日期格式,然后用DateFormat类或者SimpleDateFormat类来判断是否是正确的日期格式。下面的例子供参考。更详细的内容(比如yyyy,MM,dd各代表什么)可以参考javadoc。\\x0d\\x0a\\x0d\\x0apublic class DateUtil\\x0d\\x0a{\\x0d\\x0a ...

java中怎么做到判断输入的日期是否合法
Java为了支持多语言,没有固定的日期格式。你需要根据自己的需要指定日期格式,然后用DateFormat类或者SimpleDateFormat类来判断是否是正确的日期格式。下面的例子供参考。更详细的内容(比如yyyy,MM,dd各代表什么)可以参考javadoc。public class DateUtil { private static final SimpleDateFormat dateFormat =...

java中怎么判断年月日的格式
判断时间格式 格式必须为“YYYY-MM-dd”2004-2-30 是无效的 2003-2-29 是无效的 param sDate return \/ public boolean isValidDate(String str) { \/\/String str = "2007-01-02";DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");try{ Date date = (Date)formatter.parse(str)...

java输入1_365之间的一个数字,判断该数字是一年当中的第几个月的第几...
如果我们将1-365的数字看作一年中的天数,我们可以使用一个循环来计算该数字所对应的月份和日期。然后,我们可以使用if-else语句来确定月份。由于每个月的天数不同,我们可以使用if-else语句来逐个检查。例如,如果输入的数字小于等于31,那么它对应的月份为1月;如果输入的数字大于31且小于等于59,那么它...

java中如何判断输入的日期是否合法
\/\/得到年月日 String[] array = dateString.split("-");int year = Integer.valueOf(array[0]);int month = Integer.valueOf(array[1]);int day = Integer.valueOf(array[2]);if(month12){return false;} int[] monthLengths = new int[]{0, 31, -1, 31, 30, 31, 30, 31, ...

java 编程从屏幕输入8-10位字符串,判断是否为日期
\/\/ 获取月份 Boolean isLeap = leapYear(Integer.parseInt(year)); \/\/ 判断闰年 System.out.println(isLeap); StringBuffer eL= new StringBuffer(); String longMonth = "01030507081012"; \/\/ 31天的月份 String fix = "([2][0-3]|[0-1][0-9]|[1-9])[0-5][0-9]...

用JAVA正则表达式怎么匹配年月日(比如要求输入为出生日期)
建议使用 ^(\\d{2}|\\d{4})[-\/](0?[1-9]|1[12])[-\/](0?[1-9]|[12]\\d|3[01])$ 来匹配(日期不一定有效),然后尝试转换成日期.如果要严谨点可以用^(\\d{2}|\\d{4})[-\/](((0?[13578]|10|12)[-\/](0?[1-9]|[12]\\d|3[01]))|((0?[469]|11)[-\/](0?[1-...

java怎么判断一个日期年月日在日期范围内
java.util.Date有before,after函数,根据这两个函数可以判断在日期范围内。温馨提示:注意边界范围

java如何对生日(yyyymmdd)进行合法性判断?
"yyyy年MM月dd日"};\/ 设置格式过滤器 \/ \/\/记录传入的日期字符串,转换成日期类型 Date birth=null;\/\/判断格式是否正确,默认值为false boolean isRight=false;for(String f:formats){ try { birth =new SimpleDateFormat(f).parse(birthday);\/\/校验日期转换后是和传入的值不相同,说明日期传入有...

相似回答