java——判断日期是否在今天之前

来源:互联网 发布:席南华 知乎 编辑:程序博客网 时间:2024/05/29 07:55

这里说的日期是指字符串的日期格式,如“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 blocke.printStackTrace();}






0 0