在JSP中,如何判定一个字体串是否是合法的日期??(100分)

  • 主题发起人 主题发起人 天真
  • 开始时间 开始时间

天真

Unregistered / Unconfirmed
GUEST, unregistred user!
比如我输入了'2002-05-16'我想用函数判定它是不是合法的日期!
用JSP,或JAVA谢谢
 
可以用
try
parse
catch
来转换试试,如果可以就是了。
 
至于PARSE后面跟什么呢?
 
想来想去也没什么好办法,只有分别截取3次,依次判断
try {
value = Integer.parseInt(input);
}
catch(NumberFormatException e) {
}
 
但如果后面还加上了时间,怎么办?
 
针对你的yyyy-mm-dd格式的日期,写了这个方法
public static boolean isDate(String strdate) {
try {
(new SimpleDateFormat("yyyy-MM-dd")).parse(strdate);
} catch(Exception e) {
return false;
}
return true;
}
 
try
java.util.date d = DateFormat.parse( str );
catch
 
这个问题的答案在这里
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1126596
 
public void setDate(String strYear, String strMonth, String strDay) throws java.text.ParseException {
//valid input
int year,month,day;
try {
year=Integer.parseInt(strYear);
month=Integer.parseInt(strMonth);
day=Integer.parseInt(strDay);
} catch (Exception e) {
throw new java.text.ParseException("Not a Valid Input!",0);
}
//backup
Date oldDate=cal.getTime();
setYear(year);
setMonth(month);
setDay(day);
if(getYear()!=year || getMonth()!=month || getDay()!=day){
cal.setTime(oldDate);
throw new java.text.ParseException("Not a Valid Input! maybe input is out of bound",0);
}
}
 
多人接受答案了。
 
后退
顶部