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)