`
vakin.jiang
  • 浏览: 147533 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Java常用日期处理工具函数类

    博客分类:
  • J2EE
阅读更多
/**
 * 常用日期处理工具类
 */
 public class dateUtils{

/**
	 * 格式化当前时间
	 * @param pattern
	 * @return
	 */
	public static String format(String pattern){
		SimpleDateFormat df = new SimpleDateFormat(pattern);
		return df.format(new Date());
	}
	
	/**
	 * 格式化指定时间
	 * @param date
	 * @param pattern
	 * @return
	 */
	public static String format(Date date, String pattern){
		SimpleDateFormat df = new SimpleDateFormat(pattern);
		return df.format(date);
	}
	
	
	/**
	 * 解释日期
	 * @param str
	 * @param pattern
	 * @return
	 * @throws Exception
	 */
	public static Date parse(String str, String pattern) throws Exception{
		SimpleDateFormat df = new SimpleDateFormat(pattern);
		Date date = df.parse(str);
		return date;
	}
	
	/**
	 * 得到当天开始日期
	 * @return
	 * @throws Exception
	 */
	public static Date getDate() throws Exception{
		return OspUtils.parse(OspUtils.format("yyyyMMdd"),"yyyyMMdd");
	}
	
	/**
	 * 在指定的日期增加天数
	 * @param initDate
	 * @param diff
	 * @return
	 */
	public static Date addDay2Date(Date initDate , int diff){
		Calendar cal = Calendar.getInstance();
		cal.setTime(initDate);
		cal.add(Calendar.DATE, diff);	
		return new Date(cal.getTimeInMillis());
	}
	
	/**
	 * 返回当天起始时间
	 * @return
	 */
	public static Date getCurrentDayStart() throws Exception{
		String start = format("yyyyMMdd")+"000000";
		return parse(start, yyyyMMddhhmmss);
		
	}
	
	/**
	 * 返回当天结束时间
	 * @return
	 */
	public static Date getCurrentDayend() throws Exception{
		String start = format("yyyyMMdd")+"235959";
		return parse(start, yyyyMMddhhmmss);
		
	}
	
	/**
	 * 判断日期是否是当天时间
	 * @param date
	 * @return
	 */
	public static boolean judgeDateIsCurrentDay(Date date){
		
		try {
			long time = date.getTime();
			long Daystart = getCurrentDayStart().getTime();
			long Dayend = getCurrentDayend().getTime();
			return Daystart<=time && time<=Dayend;
		} catch (Exception e) {
		}
		return false;
	}
	
	/**
	 * 比较日期字符串返回天数
	 * @param strBegin 格式:yyyy-MM-dd
	 * @param strEnd   格式:yyyy-MM-dd
	 * @return
	 * @throws Exception
	 */
	public static int getDifferDays(String strBegin,String strEnd) throws Exception {
		   
        java.util.Calendar calst = java.util.Calendar.getInstance();   
        java.util.Calendar caled = java.util.Calendar.getInstance();  
        
        calst.setTime(parse(strBegin.concat(" 00:00:00"), yyyyMMddhhmmss));   
        caled.setTime(parse(strEnd.concat(" 00:00:00"), yyyyMMddhhmmss));   
  
        //得到两个日期相差的天数   
        int days = ((int) (caled.getTime().getTime() / 1000) - (int) (calst   
                .getTime().getTime() / 1000)) / 3600 / 24;   
           
        return days;   
    
	}
	
	/**
	 * 比较日期返回天数
	 * @param strBegin
	 * @param strEnd
	 * @return
	 */
	public static final int getDifferDays(Date strBegin, Date strEnd) {   
        java.util.Calendar calst = java.util.Calendar.getInstance();   
        java.util.Calendar caled = java.util.Calendar.getInstance();   
        calst.setTime(strBegin);   
        caled.setTime(strEnd);   
        //设置时间为0时   
        calst.set(java.util.Calendar.HOUR_OF_DAY, 0);   
        calst.set(java.util.Calendar.MINUTE, 0);   
        calst.set(java.util.Calendar.SECOND, 0);   
        caled.set(java.util.Calendar.HOUR_OF_DAY, 0);   
        caled.set(java.util.Calendar.MINUTE, 0);   
        caled.set(java.util.Calendar.SECOND, 0);   
  
        //得到两个日期相差的天数   
        int days = ((int) (caled.getTime().getTime() / 1000) - (int) (calst   
                .getTime().getTime() / 1000)) / 3600 / 24;   
           
        return days;   
    }   

	
	public static final String DATE_PATTERN_YYYY_MM_DD = "yyyy-MM-dd";
	public static final String yyyyMMddhhmmss = "yyyyMMddhhmmss";

}
分享到:
评论

相关推荐

    一些java常用的工具类

    通常,这样的库会包含一系列针对特定场景的工具类,如日期时间处理、文件操作、字符串格式化、数据校验等。例如,可能会有一个DateTimeUtils类,提供日期和时间的格式化、比较和转换方法;一个FileUtils类,用于文件...

    java常用的工具类整理28个

    下面我们将详细探讨Java中28个常用的工具类,主要涉及`IO`相关的开发工具。 1. **java.lang.Math**:这个类提供了许多基础数学函数,如求平方根、最大值、最小值、随机数生成等。 2. **java.util.Arrays**:用于...

    java常用工具类

    "java常用工具类"这个主题涵盖了Java开发中常用的类和方法,这些工具类可以帮助我们简化编程工作,提高代码的可读性和可维护性。在Java中,`java.util`包就是这样一个包含大量工具类的包,提供了很多实用的功能。 1...

    常用的java工具类

    本篇文章将详细解析Java中常用的工具类,包括字符处理、文件处理、时间操作以及图片处理等方面的知识点。 1. **字符处理**: - `java.lang.String`:String类是Java中最基础也是最常用的数据类型之一,提供了大量...

    java 常用工具类

    在Java中,最知名的工具类库是`java.util`包,它包含了大量方便实用的类。下面将详细讨论Java工具类中的关键知识点。 1. **集合框架**: `java.util`包下的集合框架是Java中处理数据结构的核心。它包括List(如...

    java操作日期时间工具类

    Java提供了多种工具类来帮助开发者进行日期时间的操作,其中最常用的是`java.util.Date`、`java.util.Calendar`以及`java.time`包中的类。本篇将重点介绍Java操作日期时间的工具类,特别是通过`DateUtil.java`这个...

    Java常用工具类大全,工作5年精心整理.zip

    "Java常用工具类大全,工作5年精心整理.zip"这个压缩包文件很可能包含了一位有经验的Java开发者在五年工作中积累的各种实用工具类,这些工具类能够极大地提高开发效率,简化代码编写。以下是对可能包含的知识点进行...

    java常用函数.doc

    本篇将深入讲解Java中涉及字符串、包装类、日期处理、基础数学操作以及其他实用工具类的相关函数,以及GUI组件如文本框、文本区、按钮和标签的使用。 首先,我们关注字符串处理。Java中的`String`类提供了丰富的...

    Java常用工具类UtilClass

    在Java编程中,工具类(Util Class)是包含各种实用函数的静态类,它们提供了一种简化常见任务的方法。在给定的`UtilClass`中,我们有五个主要的工具类:`StringUtil`、`FileUtil`、`ConnectDB`、`DateUtil`和`...

    java常用工具类整理

    "java常用工具类整理"这个主题涵盖了Java开发中常用的工具类,这些类在日常编程中非常实用,能大大提高开发效率。这里我们将深入探讨一些常见的Java工具类,并结合`com-jarvis-base`这个文件名,推测这是一个基础...

    java工具类集合

    在Java中,工具类通常被组织在各种包下,如`java.util`、`java.lang`、`java.io`等。下面将详细介绍一些重要的Java工具类及其功能。 1. `java.util.ArrayList` 和 `java.util.LinkedList`: - `ArrayList` 是基于...

    java常用开发工具类大全

    - `java.util`: 这个包中包含了大量工具类,如`ArrayList`, `HashMap`, `LinkedList`等集合框架类,以及`Date`, `Calendar`时间处理类,`Random`随机数生成器等。 - `java.text`: 提供了`SimpleDateFormat`进行...

    java常用工具类集合(也有转自他人的)

    总结来说,"java常用工具类集合"是一个涵盖了多种实用工具类的资源,包括但不限于字符串处理、集合操作、日期时间、IO操作等多个方面。通过学习和应用这些工具类,开发者能够更高效地编写代码,同时也能从开源社区中...

    java常用的工具类

    以下是一些在Java中常用的工具类及其功能详解: 1. **Base64**: Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一。Java中的`java.util.Base64`类提供了Base64编码和解码的功能,包括对字节数组、字符串...

    牛逼的java常用工具类

    1. **集合框架**:Java集合框架是Java中处理对象集合的核心API,包括List、Set、Map等接口以及ArrayList、HashSet、HashMap等实现类。高效的数据结构如TreeSet和LinkedHashMap在排序和保持插入顺序方面具有重要作用...

    常用的30个java工具类

    Java中的`javax.xml.parsers.DocumentBuilderFactory`和`org.w3c.dom.Document`等类用于解析XML文档,`javax.xml.transform.TransformerFactory`和`javax.xml.transform.Transformer`处理XML的转换。 5. **HTTPS**:...

    28个java常用的工具类

    在Java编程语言中,工具类(Utility Class)是包含各种静态方法的类,这些方法用于执行特定任务,如数据处理、格式化、计算等。Java提供了丰富的内置工具类,但开发者也经常创建自定义工具类以满足项目需求。标题...

    Java常用工具类.zip

    1. **字符串工具类**:在Java中,`java.lang.String`类提供了许多内置的方法来处理字符串,但有时我们还需要更高级的功能,这时可以使用`java.util.StringUtils`(来自Apache Commons Lang库)或者Google的Guava库中...

    Java常用工具类大全,工作5年精心整理(最新版).zip

    在Java标准库中,`java.util`包是最基础也是最重要的包之一,它提供了大量的工具类,如ArrayList、HashMap、Date、Calendar等,这些都是开发者经常会用到的数据结构和时间日期处理工具。 1. **集合框架**:Java集合...

Global site tag (gtag.js) - Google Analytics