我今天的日期格式为2014-05-08
,我需要在当前日期前2周获得日期。
所以我应该回来的数据是 - 2014-04-24
。
String currentDate= dateFormat.format(date); //2014-05-08
String dateBefore2Weeks = currentDate- 2 week;
但我不知道如何在Java当前日期之前提取两周的日期?
答案 0 :(得分:3)
使用Calendar
修改Date
对象:
//method created for demonstration purposes
public Date getDateBeforeTwoWeeks(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DATE, -14); //2 weeks
return calendar.getTime();
}
在代码中使用上述方法:
String currentDate= dateFormat.format(date); //2014-05-08
String dateBefore2Weeks = dateFormat.format(getDateBeforeTwoWeeks(date));
答案 1 :(得分:1)
答案 2 :(得分:1)
Java现在有一个非常好的内置日期库,java.time与Java 8捆绑在一起。
import java.time.LocalDate;
public class Foo {
public static void main(String[] args) {
System.out.println(LocalDate.parse("2014-05-08").minusWeeks(2));
// prints "2014-04-24"
}
}
答案 3 :(得分:0)
值得一看joda-time api [http://joda-time.sourceforge.net/userguide.html]。