您的位置:首页 > 编程语言 > Java开发

java中关于日期计算的方法

2012-09-22 00:00 561 查看
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;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 日期