如何判断是否是合法日期 用format来格式化,能成功就正确 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 format没用,19810332会自动变成19810401的. setLenient(false),就不会自动变了 用正则表达式,比如:(19|20)\d\d[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])Date yyyy-mm-dd1900-01-01 through 2099-12-31^_^ 回复人: abc_xyz() ( ) 信誉:100 2004-12-21 15:20:00 得分: 0 format没用,19810332会自动变成19810401的. ------------------再对两个字符串比较.看是不是一样,不样则说明不对! 自己写一个方法,把日期字符串substring下来年,月,日一个一个比较虽然比较麻烦,但可靠 import java.text.ParseException;/** * User: zhuzf * Date: 2004-12-23 * Time: 9:21:53 */public class Test { /** * 是否有效的日期 * * @param dateStr * @param pattern * @return */ public static boolean isValidDate(String dateStr, String pattern) { java.text.SimpleDateFormat df = new java.text.SimpleDateFormat(pattern); try { df.setLenient(false); df.parse(dateStr); return true; } catch (ParseException e) { return false; } } public static void main(String[] args) throws Exception { System.out.println("19810331 is valid? " + isValidDate("19810331", "yyyyMMdd")); System.out.println("19810332 is valid? " + isValidDate("19810332", "yyyyMMdd")); }} 求大神解题啊!!!!!!!!!感谢了 有关数据库的增删改操作 编译出现警告未经检查的类型使用 引用css的问题,求助。 关于日期问题 大家都来复习复习,看看这个是怎么回事(1) jxl的配置问题,真晕了 求<JAVA大学教程>课后习题答案 NIO直接从readable里面write 请教一个关于数组造型的问题! java与数据库access的连接问题 求教Character类
比如:
(19|20)\d\d[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])Date yyyy-mm-dd
1900-01-01 through 2099-12-31^_^
format没用,19810332会自动变成19810401的.
------------------再对两个字符串比较.看是不是一样,不样则说明不对!
年,月,日一个一个比较
虽然比较麻烦,但可靠
* User: zhuzf
* Date: 2004-12-23
* Time: 9:21:53
*/
public class Test {
/**
* 是否有效的日期
*
* @param dateStr
* @param pattern
* @return
*/
public static boolean isValidDate(String dateStr, String pattern) {
java.text.SimpleDateFormat df = new java.text.SimpleDateFormat(pattern);
try {
df.setLenient(false);
df.parse(dateStr);
return true;
} catch (ParseException e) {
return false; }
} public static void main(String[] args) throws Exception {
System.out.println("19810331 is valid? " + isValidDate("19810331", "yyyyMMdd"));
System.out.println("19810332 is valid? " + isValidDate("19810332", "yyyyMMdd"));
}
}