赞
踩
这里说的日期是指字符串的日期格式,如“2014-10-15”,我们要判断这个日期是否在今天之前,网上看到好多判断的方法,都是拿这个日期转换成Date对象 然后与new Date()比较,使用comparetTo() 或者before()方法,其实这样做都会有点小问题,这样做忽略了一个小时分钟的比较,会出现错误,得不到正确的结果。
如果要得到正确的结果,应该将当前时间new Date() 转换成“yyyy-MM-dd”的格式,然后在将两者转换成date进行判断,代码如下:
- java.util.Date nowdate = new java.util.Date();
- String date = DateUtils.formatDate(nowdate, "yyyy-MM-dd");
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd",
- Locale.CHINA);
- Date d;
- try {
- d = sdf.parse(dateFormat);
- int flag = d.compareTo(DateUtils
- .formatDateFromeString(date));
- if (flag >= 0) {//当天及当天之后,<0就是在日期之前
-
- }
- } catch (ParseException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。