`
chengyue2007
  • 浏览: 1488878 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

Java日期加减

    博客分类:
  • java
 
阅读更多
import   java.util.*;  
  import   java.text.*;  
   
  public   class   formatDate   {  
   
      public   formatDate()   {  
      }  
   
      //   格式化日期为字符串   "yyyy-MM-dd   hh:mm"  
      public   String   formatDateTime(Date   basicDate,String   strFormat)   {  
          SimpleDateFormat   df   =   new   SimpleDateFormat(strFormat);  
          return   df.format(basicDate);  
      }  
   
      //   格式化日期为字符串   "yyyy-MM-dd   hh:mm"  
      public   String   formatDateTime(String   basicDate,String   strFormat)   {  
          SimpleDateFormat   df   =   new   SimpleDateFormat(strFormat);  
          Date   tmpDate=null;  
          try   {  
              tmpDate=df.parse(basicDate);  
          }  
          catch(Exception   e)   {  
              //   日期型字符串格式错误  
          }  
          return   df.format(tmpDate);  
      }  
   
      //   当前日期加减n天后的日期,返回String   (yyyy-mm-dd)  
      public   String   nDaysAftertoday(int   n)   {  
          SimpleDateFormat   df   =   new   SimpleDateFormat("yyyy-MM-dd");  
          Calendar   rightNow   =   Calendar.getInstance();  
          //rightNow.add(Calendar.DAY_OF_MONTH,-1);  
          rightNow.add(Calendar.DAY_OF_MONTH,+n);  
          return   df.format(rightNow.getTime());  
      }  
   
      //   当前日期加减n天后的日期,返回String   (yyyy-mm-dd)  
      public   Date   nDaysAfterNowDate(int   n)   {  
          Calendar   rightNow   =   Calendar.getInstance();  
          //rightNow.add(Calendar.DAY_OF_MONTH,-1);  
          rightNow.add(Calendar.DAY_OF_MONTH,+n);  
          return   rightNow.getTime();  
      }  
   
      //   给定一个日期型字符串,返回加减n天后的日期型字符串  
      public   String   nDaysAfterOneDateString(String   basicDate,int   n)   {  
          SimpleDateFormat   df   =   new   SimpleDateFormat("yyyy-MM-dd");  
          Date   tmpDate   =   null;  
          try   {  
              tmpDate   =   df.parse(basicDate);  
          }  
          catch(Exception   e){  
              //   日期型字符串格式错误  
          }  
          long   nDay=(tmpDate.getTime()/(24*60*60*1000)+1+n)*(24*60*60*1000);  
          tmpDate.setTime(nDay);  
   
          return   df.format(tmpDate);  
      }  
   
      //   给定一个日期,返回加减n天后的日期  
      public   Date   nDaysAfterOneDate(Date   basicDate,int   n)   {  
          long   nDay=(basicDate.getTime()/(24*60*60*1000)+1+n)*(24*60*60*1000);  
          basicDate.setTime(nDay);  
   
          return   basicDate;  
      }  
   
      //   计算两个日期相隔的天数  
      public   int   nDaysBetweenTwoDate(Date   firstDate,Date   secondDate)   {  
          int   nDay=(int)((secondDate.getTime()-firstDate.getTime())/(24*60*60*1000));  
          return   nDay;  
      }  
   
      //   计算两个日期相隔的天数  
      public   int   nDaysBetweenTwoDate(String   firstString,String   secondString)   {  
          SimpleDateFormat   df   =   new   SimpleDateFormat("yyyy-MM-dd");  
          Date   firstDate=null;  
          Date   secondDate=null;  
          try   {  
              firstDate   =   df.parse(firstString);  
              secondDate=df.parse(secondString);  
          }  
          catch(Exception   e)   {  
              //   日期型字符串格式错误  
          }  
   
          int   nDay=(int)((secondDate.getTime()-firstDate.getTime())/(24*60*60*1000));  
          return   nDay;  
      }  
   
  }  
package cn.zxlc.excel;

import java.io.FileInputStream;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class Main {

	/**
	 * @param args
	 * @throws ParseException 
	 */
	public static void main(String[] args) throws ParseException {
		//System.out.println(12);
		//readExcel();
		
		
		System.out.println(nDaysAftertoday(60));//当前日期 + 60天的日期	
		System.out.println(nDaysAfterMonth(2));//当前日期 + 2个月
		System.out.println(nDaysAftertoday("2001-2-1",60)); //传入日期 +60天
		System.out.println(nDaysAfterMonth("2001-2-1",2)); //传入日期 + 2个月
	}
 
   public static  String   nDaysAftertoday(int   n)   {  
	          SimpleDateFormat   df   =   new   SimpleDateFormat("yyyy-MM-dd");  
	          Calendar   rightNow   =   Calendar.getInstance();  
	          //rightNow.add(Calendar.DAY_OF_MONTH,-1);  
	          rightNow.add(Calendar.DAY_OF_MONTH,+n);  
	          return   df.format(rightNow.getTime());  
   } 
   public static  String   nDaysAftertoday(String strDate,int   n) throws ParseException   {  
       SimpleDateFormat   df   =   new   SimpleDateFormat("yyyy-MM-dd");  
       Calendar   rightNow   =   Calendar.getInstance(); 
       Date date=df.parse(strDate);
       rightNow.setTime(date);
       //rightNow.add(Calendar.DAY_OF_MONTH,-1);  
       rightNow.add(Calendar.DAY_OF_MONTH,+n);  
       return   df.format(rightNow.getTime());  
} 
   
   public static  String   nDaysAfterMonth(int  n)   {  
       SimpleDateFormat   df   =   new   SimpleDateFormat("yyyy-MM-dd");  
       Calendar   rightNow   =   Calendar.getInstance();  
       
       //rightNow.add(Calendar.DAY_OF_MONTH,-1);  
       //rightNow.add(Calendar.DAY_OF_MONTH,+n);  
       rightNow.add(Calendar.MONTH,+n);  
       return   df.format(rightNow.getTime());  
  }  
   public static  String   nDaysAfterMonth(String strDate,int  n) throws ParseException   {  
       SimpleDateFormat   df   =   new   SimpleDateFormat("yyyy-MM-dd");  
       Calendar   rightNow   =   Calendar.getInstance();  
       Date date=df.parse(strDate);
       rightNow.setTime(date);
       //rightNow.add(Calendar.DAY_OF_MONTH,-1);  
       //rightNow.add(Calendar.DAY_OF_MONTH,+n);  
       rightNow.add(Calendar.MONTH,+n);  
       return   df.format(rightNow.getTime());  
  }  

		
	 
	 
}
  
 
分享到:
评论

相关推荐

    java对日期的加减操作

    Java 日期加减操作详解 Java 中对日期的加减操作是指对日期的加减、年、月、日、天等操作。Java 提供了多种方式来实现日期的加减操作,本文将详细介绍其中的两种方法。 使用 java.util.Calender 实现日期加减 ...

    日期类的加减及java中日期类的操作算法大全

    曾经我不太会日期类的算法,通过学习后总结了一些,有好用的东西是要分享给大家的,希望大家也能学的越来越好。

    日期类的加减及java中所以日期类的操作算法大全

    本文将深入探讨Java中的日期类操作,包括日期的加减运算,以及如何利用不同的日期类进行高效的时间管理。 ### 一、日期类的基本操作 #### 1. 使用Calendar类 `Calendar`类是Java中处理日期和时间的核心类之一,它...

    日期加减天数后的日期

    日期加减天数后的日期 。。日期操作。。。初学者学习

    日期加减java源码

    课堂作业,一个类用于加减日期,有方法setDate(),SeeDate(),AddDate(),SeeDate()返回一个字符串,AddDate()用于增加或减少日期,可以处理公元前,只要在int范围内都可

    日期操作,转日期格式,加减日期,日期详解

    在提供的文件列表中,DateAccount.java可能是包含日期操作逻辑的Java源代码文件,而加减日期.txt和转日期格式.txt很可能是详细说明这些操作的文本文件。通过阅读这些文件,你可以更深入地理解如何在实际代码中实现...

    java 日期相加减.doc

    #### 一、利用`java.util.Calendar`进行日期加减 在Java中,`java.util.Calendar`是一个非常强大的类,用于处理与日期和时间相关的各种操作,包括日期的加减。`Calendar`类提供了一系列的方法来获取、设置和操作...

    java Calender类 日期的加减.docx

    Java 中的 Calendar 类提供了日期和时间的操作功能,本文将对 Calendar 类的日期加减操作进行详细的介绍和分析。 Calendar 类的日期加减操作 Calendar 类的日期加减操作可以通过 set() 方法实现,例如,设置当前...

    时间计算加减

    课程笔记:时间戳和int类型的数值进行加减,获得date类型的日期,及时间格式的转换

    日期类加减的年月日版本

    在实际开发中,日期加减常用于计算有效期、计划任务、日历应用等场景。例如,计算信用卡到期日、确定项目交付期限、规划节假日等。 10. **最佳实践**: 使用日期类时,应遵循良好的编程习惯,如避免使用字符串...

    java 日期算法

    Java 日期算法大全 Java 中日期类操作算法大全是 Java ...Java 日期算法大全涵盖了日期类的基本操作、日期类的加减、日期类的格式化输出、日期类的计算等多个方面的知识点,为开发者提供了详细的Java日期算法指南。

    hive时间按月份加减UDF

    例如,`SELECT add_months(date_column, 3) FROM table` 将会返回date_column字段的日期加3个月的结果。 在实际应用中,你可能还需要考虑一些复杂情况,如闰年、月份天数不一致等问题。对于UDF的实现,你可能需要...

    java 日期选择控件DateChooser

    7. 额外功能:某些实现可能包含其他特性,如日期范围选择、日期计算(加减日期)以及与数据库或其他数据源的集成。 在Java开发中,DateChooser控件可以使用第三方库来实现,比如JCalendar库中的JDateChooser,它是...

    java 日期时间工具类 日期时间的加减 身份证号上的日期是否小于2岁等

    java 日期时间工具类 日期时间的加减 身份证号上的日期是否小于2岁等

    java 日期帮助类

    3. **日期加减操作**: - `addDays(Date date, int days)`:在日期上增加或减少指定天数。 - `addMonths(Date date, int months)`:在日期上增加或减少指定月数。 - `addYears(Date date, int years)`:在日期上...

    java日期处理大全

    2. **使用roll()方法**:不会考虑日期边界,适用于精确控制日期加减,如需保持在同一个月,即使加上的天数超过当月天数也会停留在该月最后一天。 ```java cal.roll(Calendar.DATE, -4); // 减去4天 cal.roll...

    java日期时间操作函数代码

    3. **日期时间计算**:在旧API中,可以使用`Calendar`类进行日期时间的加减操作。例如,增加一天:`Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.DAY_OF_MONTH, 1); Date newDate = calendar...

    java日期转化操作大全

    在Java 8之前,日期的加减运算相对复杂,通常需要结合`Calendar`类。自Java 8起,`TemporalAdjusters`和`Period`类提供了更直观的方法。 1. 使用`Calendar`类进行加减: ```java Calendar calendar = Calendar....

    java语言日期处理大全

    例如,可以使用`LocalDate.now()`获取当前日期,`LocalDate.plusDays()`进行日期加减等。 10. **时区处理**: 如果需要处理不同的时区,可以使用`ZoneId`和`ZonedDateTime`类,它们允许你在处理日期和时间时考虑到...

    JAVA日期操作类详细讲解

    在日期运算中,`java.time`包提供了`plusDays()`, `minusMonths()`, `until()`等方法,使得日期的加减运算变得直观且方便。另外,`TemporalAdjusters`接口提供了一些实用的调整器,比如`firstDayOfMonth()`和`...

Global site tag (gtag.js) - Google Analytics