java中时间类(util Date)的后延与前推处理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中时间类(util Date)的后延与前推处理相关的知识,希望对你有一定的参考价值。

当后延或者前推的天数在一定时间之内时,可以用以下方法处理

public static Date  getValidEndTime(Date date,int validDayCount){

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

String datestr = sdf.format(date);

try {

date = sdf.parse(datestr);

} catch (ParseException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

date.setTime(date.getTime() + (validDayCount * 24 * 60 * 60 * 1000));

return date;

}

方法来把时间就改变指定的天数(validDayCount)

本例中的推移时间是以整数天推移,也就是上文中的sdf为‘’yyyy-MM-dd‘’的形式,


经过本人的测试当用如上方法改变时间导致月份变更的时候则会出现差错,所以当要改变的天数足够多时,则可以通过以下的方法来推移时间。

public static Date  getValidEndTime(Date date,int validDayCount){

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

String datestr = sdf.format(date);

try {

date = sdf.parse(datestr);

} catch (ParseException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

Calendar calendar = Calendar.getInstance();

calendar.setTime(date);

calendar.add(Calendar.DATE, validDayCount);

date = calendar.getTime();

return date;

}


本文出自 “11983084” 博客,转载请与作者联系!

以上是关于java中时间类(util Date)的后延与前推处理的主要内容,如果未能解决你的问题,请参考以下文章

Java中时间类的处理

Java中时间

java中时间类型转换

java中时间处理

Oracle 谓语前推导致的错误

java中时间和日期的操作