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

这里说的日期是指字符串的日期格式,如“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();
					}
时间: 2024-07-29 11:38:49

java——判断日期是否在今天之前的相关文章

java 判断日期是否是节假日

1.新建一个excel命名为“节假日.xls”存放节假日,模板格式如下 2.判断是否是节假日的类 工作日返回true ,休息日返回false. 需要引用poi-bin-3.9包,包放在博客文件中 import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.net.MalformedURLException

Java判断字符串是否符合yyyyMMdd日期格式

Java判断字符串是否符合yyyyMMdd日期格式 代码: /** * 判断参数的格式是否为"yyyyMMdd"格式的合法日期字符串 * */ public static boolean isValidDate(String str) { try { if (str != null && !str.equals("")) { if (str.length() == 8) { // 闰年标志 boolean isLeapYear = false; St

java 判断两个时间相差的天数!

package com.datedaycha;     import java.text.SimpleDateFormat;     import java.util.Calendar;     import java.util.Date;     import com.sun.org.apache.xerces.internal.impl.xpath.regex.ParseException;     /*      * java 判断两个时间相差的天数     1.实现目标     输入:两

Java对日期Date类进行加减运算,年份加减,月份加减

Date d=new Date();    SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");    System.out.println("今天的日期:"+df.format(d));    System.out.println("两天前的日期:" + df.format(new Date(d.getTime() - (long)2 * 24 * 60 * 60 * 1000))); 

java处理日期时间 相加减大全

java处理日期时间 相加减 JAVA处理日期时间常用方法: 1.java.util.Calendar Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR.MONTH.DAY_OF_MONTH.HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法.瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000,格里高利历)的偏移量. 例: Java代码 1. Calendar cal

Java入门——日期操作类

Java入门——日期操作类 Date类 是一个较为简单的操作类,使用java.util.Data类的构造方法并进行输出就可以得到一个完整的日期.构造方法为: public Data(); java.util包需要导入 package Sep26; import java.util.Date; public class DataDemo01 { public static void main(String[] args) { Date date=new Date(); System.out.pri

Java 8 – 日期和时间实用技巧

当你开始使用Java操作日期和时间的时候,会有一些棘手.你也许会通过System.currentTimeMillis() 来返回1970年1月1日到今天的毫秒数.或者使用Date类来操作日期:当遇到加减月份.天数的时候 你又需要用到Calendar类:当需要格式化日期的时候需要使用java.text.DateFormat类. 总而言之在Java中操作日期不是很方便,以至于很多开发者不得不使用第三方库,比如: joda-time. 现有API存在的问题 线程安全: Date和Calendar不是线

Java Date 日期 时间 相关方法

DateTools.java import java.text.SimpleDateFormat; import java.util.Date; /** * 日期操作类 */ public class DateTools { /**yyyyMMddHHmmss * * @return */ public static String getAllDate(){ SimpleDateFormat lFormat; //格式可以自己根据需要修改 lFormat = new SimpleDateForm

实现:判断日期之间关系(相交,相离,重合),得到相交重合的天数以及计算两个日期相差的天数

package com.xiawei.repeatdays; import java.util.Date; /** * 判断日期之间关系(相交,相离,重合),得到相交重合的天数 * */public class RepeatDays { /** * 将两个日期相减的结果以字符串秒的格式返回 */ public static String getDayDifference(Date d1 , Date d2){ StringBuffer ds = new StringBuffer(); long