`
yuanlijia1
  • 浏览: 115065 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

日期操作类

    博客分类:
  • java
阅读更多
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
/**
 * 日期操作类
 * @author yuanlj
 *
 */
public class DateUtils {
	  /** yyyy-MM-dd 日期格式 */
	  private static final SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
	
	 /**
	  * 日期相加
	  * 
	  * @param date
	  *            日期
	  * @param day
	  *            天数
	  * @return 返回相加后的日期
	  */
	 public static java.util.Date addDate(java.util.Date date, int day) {
	  java.util.Calendar c = java.util.Calendar.getInstance();
	  c.setTimeInMillis(getMillis(date) + ((long) day) * 24 * 3600 * 1000);
	  return c.getTime();
	 }

	 /**
	  * 日期相减
	  * 
	  * @param date
	  *            日期
	  * @param date1
	  *            日期
	  * @return 返回相减后的日期
	  */
	 public static int diffDate(java.util.Date date, java.util.Date date1) {
	  return (int) ((getMillis(date) - getMillis(date1)) / (24 * 3600 * 1000));
	 } 
	 /**
	  * 返回毫秒
	  * 
	  * @param date
	  *            日期
	  * @return 返回毫秒
	  */
	 public static long getMillis(java.util.Date date) {
	  java.util.Calendar c = java.util.Calendar.getInstance();
	  c.setTime(date);
	  return c.getTimeInMillis();
	 }
	 /**
	  *求两个日期差
	  *@param beginDate  开始日期
	  *@param endDate   结束日期
	  *@return 两个日期相差天数
	  */
	 public static long GetDateMargin(Date beginDate,Date endDate){
	 	
	    long margin = 0;
	    
	    if (endDate.after(beginDate)) { 
	 	   
	 	   margin = endDate.getTime() - beginDate.getTime();
	 	
	 	   margin = margin/(1000*60*60*24);
	 	   
	    } else {
	 	   return 0;
	    }
	    return margin;
	 }
	
	 public static String dateToString(Date d){
		 String stringDate =  format.format(d);
		 return stringDate;
	 }
	 public static Date stringToDate(String stringDate){
		 java.util.Date dtime = new Date();
		 try {
			dtime = format.parse(stringDate);
		} catch (ParseException e) {
			e.printStackTrace();
		}
		 return dtime;
	 }
	 /**
		 * 两时间之间List
		 * @param date beginDate
		 * @param date endDate
		 * @return ArrayList
		 */
	 public static ArrayList getDateList(Date beginDate,Date endDate){
	    ArrayList dateList = new ArrayList();
	    int aa = (int) GetDateMargin(beginDate,endDate);
	    Calendar calendar = Calendar.getInstance();
	    calendar.setTime(beginDate);
	    dateList.add(calendar.getTime());
	    //calendar.add(calendar.DATE,1);
	    //calendar.set(calendar.DAY_OF_WEEK,1);
	    for(int i = 0 ; i < aa ; i++){
	        calendar.add(calendar.DATE,1);
	        dateList.add(calendar.getTime());
	    }
	    return dateList;
	 }
//	 public static void main(String[] args) {
//		 long cha = GetDateMargin(new Date(),stringToDate("2010-9-20"));
//		 System.err.println("cha===="+cha);
//		 Date d = addDate(new Date(), 30);
//		 System.err.println("add==="+dateToString(d));
//		 if (new Date().before(d)) {
//			 System.err.println("before");
//		 }
//	 }
}

分享到:
评论

相关推荐

    java日期操作类

    java日期操作类 操作java日期 替换simplatedateformate

    JAVA日期操作类详细讲解

    本篇内容将深入讲解Java中的日期操作类,这对于Java初学者来说是非常重要的知识点。 首先,我们要了解Java中的基础日期类`java.util.Date`。这个类在早期的Java版本中被广泛使用,但其API设计存在一些问题,例如不...

    java实现的日期操作类

    标题提到的"java实现的日期操作类"通常指的是使用这些类来完成特定的日期计算任务,如获取星期几或计算未来的日期。 `java.util.Date`是Java早期用来表示日期和时间的类,但它的API设计并不理想,易用性较差。因此...

    欧柏泰克:Java常用类库--日期操作类

    欧柏泰克:Java常用类库--日期操作类 在 Java 语言中,日期操作类是非常重要的一部分,常用的日期操作类有 Date 类、Calendar 类和 DateFormat 类。下面是对这三个类的详细介绍: Date 类 Date 类是 Java 语言中...

    日期操作类(Date、Calendar)笔记

    031105_【第11章:Java常用类库】_日期操作类(Date、Calendar)笔记

    c# 日历、日期操作类

    c# 日历、日期操作类 公历农历转换等 节气节日对应 等操作

    Java日期操作类常见用法示例

    Java日期操作类常见用法示例 Java日期操作类是Java语言中用于处理日期和时间的类库,主要包括java.time包下的LocalDateTime、LocalDate、LocalTime等类。这些类提供了丰富的方法来处理日期和时间,包括获取当前日期...

    Java常用类库StringBuffer,Runtime,日期操作类等类库总结

    Java常用类库StringBuffer、Runtime、日期操作类等类库总结 Java程序设计语言中有许多实用的类库,今天我们将对StringBuffer、Runtime、日期操作类等类库进行总结。 StringBuffer类 StringBuffer类是Java中一个可...

    日期操作类(Date、Calendar)

    NULL 博文链接:https://chaoyi.iteye.com/blog/2082315

    DateUtil:日期操作类 自用

    DateUtil日期操作类 自用其中包括很多常用日期操作1.Date --&gt; String2.String --&gt; Date3.获取年龄4.获取两个日期相差的天数5.Dateformat6.获取日期中的某数值。如获取月份7.增加日期中某类型的某数值。如增加...

    日期操作类(DateFormat、SimpleDateFormat)

    NULL 博文链接:https://chaoyi.iteye.com/blog/2082317

    zihaopang#Backen-develope#第九章:日期操作类1

    范例:格式化日期显示public static void main(String[] args) {String str = sdf.format(date);

    日期操作工具类

    比较全面的日期操作类,可以直接下载后使用就可以了,

    最牛.Net公共类库,.net 开发类库Cmn

    Date 日期操作类 FileFolder 文件目录操作类 Identify 验证码 Js Js操作类 Log 日志管理类 Msg 输出消息类 Net 网络操作类 Rand 生成随机数类 Request Request操作类 Safe 安全操作类 Session Session...

    js实现的日期操作类DateTime函数代码

    JavaScript中的日期操作往往依赖于内置的`Date`对象,但有时候它的使用可能不够直观或符合开发者的编程习惯。为了提供类似C#中的`DateTime`类的功能,我们可以创建一个自定义的`DateTime`类来增强日期处理的能力。这...

    python 日期操作类代码

    '''获取当前日期前后N天或N月的日期''' from time import strftime, localtime from datetime import timedelta, date import calendar year = strftime("%Y",localtime()) mon = strftime("%m",localtime()) day = ...

    c++中的日期操作(包含CString类型的部分操作)

    自制C++中应用的日期操作类 操作天数的增减 操作月数的增减 操作年数的增减 获取日期所在月有几周 获取日期所在的周一 获取日期所在的周日 获取日期所在月的第几周周一 获取日期所在月的第几周周日 获取日期星期...

Global site tag (gtag.js) - Google Analytics