dateutil 日期计算_Java DateUtil,日期整理

importjava.text.DateFormat;importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;/*** 说明:日期处理

*@version

*/

public classDateUtil {private final static SimpleDateFormat sdfYear = new SimpleDateFormat("yyyy");private final static SimpleDateFormat sdfDay = new SimpleDateFormat("yyyy-MM-dd");private final static SimpleDateFormat sdfDays = new SimpleDateFormat("yyyyMMdd");private final static SimpleDateFormat sdfTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");private final static SimpleDateFormat sdfTimes = new SimpleDateFormat("yyyyMMddHHmmss");/*** 获取YYYY格式

*@return

*/

public staticString getSdfTimes() {return sdfTimes.format(newDate());

}/*** 获取YYYY格式

*@return

*/

public staticString getYear() {return sdfYear.format(newDate());

}/*** 获取YYYY-MM-DD格式

*@return

*/

public staticString getDay() {return sdfDay.format(newDate());

}/*** 获取YYYYMMDD格式

*@return

*/

public staticString getDays(){return sdfDays.format(newDate());

}/*** 获取YYYY-MM-DD HH:mm:ss格式

*@return

*/

public staticString getTime() {return sdfTime.format(newDate());

}/*** @Title: compareDate

* @Description: TODO(日期比较,如果s>=e 返回true 否则返回false)

*@params

*@parame

*@returnboolean

*@throws*@authorfh*/

public static booleancompareDate(String s, String e) {if(fomatDate(s)==null||fomatDate(e)==null){return false;

}return fomatDate(s).getTime() >=fomatDate(e).getTime();

}/*** 格式化日期

*@return

*/

public staticDate fomatDate(String date) {

DateFormat fmt= new SimpleDateFormat("yyyy-MM-dd");try{returnfmt.parse(date);

}catch(ParseException e) {

e.printStackTrace();return null;

}

}/*** 校验日期是否合法

*@return

*/

public static booleanisValidDate(String s) {

DateFormat fmt= new SimpleDateFormat("yyyy-MM-dd");try{

fmt.parse(s);return true;

}catch(Exception e) {//如果throw java.text.ParseException或者NullPointerException,就说明格式不对

return false;

}

}/***@paramstartTime

*@paramendTime

*@return

*/

public static intgetDiffYear(String startTime,String endTime) {

DateFormat fmt= new SimpleDateFormat("yyyy-MM-dd");try{//long aa=0;

int years=(int) (((fmt.parse(endTime).getTime()-fmt.parse(startTime).getTime())/ (1000 * 60 * 60 * 24))/365);returnyears;

}catch(Exception e) {//如果throw java.text.ParseException或者NullPointerException,就说明格式不对

return 0;

}

}/***

功能描述:时间相减得到天数

*@parambeginDateStr

*@paramendDateStr

*@return* long

*@authorAdministrator*/

public static longgetDaySub(String beginDateStr,String endDateStr){long day=0;

SimpleDateFormat format= new SimpleDateFormat("yyyy-MM-dd");

Date beginDate= null;

Date endDate= null;try{

beginDate=format.parse(beginDateStr);

endDate=format.parse(endDateStr);

}catch(ParseException e) {

e.printStackTrace();

}

day=(endDate.getTime()-beginDate.getTime())/(24*60*60*1000);//System.out.println("相隔的天数="+day);

returnday;

}/*** 得到n天之后的日期

*@paramdays

*@return

*/

public staticString getAfterDayDate(String days) {int daysInt =Integer.parseInt(days);

Calendar canlendar= Calendar.getInstance(); //java.util包

canlendar.add(Calendar.DATE, daysInt); //日期减 如果不够减会将月变动

Date date =canlendar.getTime();

SimpleDateFormat sdfd= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String dateStr=sdfd.format(date);returndateStr;

}/*** 得到n天之后是周几

*@paramdays

*@return

*/

public staticString getAfterDayWeek(String days) {int daysInt =Integer.parseInt(days);

Calendar canlendar= Calendar.getInstance(); //java.util包

canlendar.add(Calendar.DATE, daysInt); //日期减 如果不够减会将月变动

Date date =canlendar.getTime();

SimpleDateFormat sdf= new SimpleDateFormat("E");

String dateStr=sdf.format(date);returndateStr;

}public static voidmain(String[] args) {

System.out.println(getDays());

System.out.println(getAfterDayWeek("3"));

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值