java.util.Date:七天前

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (21)

我在JasperReports中创建了一个报告,它只识别java.util.Date(不是Calendar或Gregarian等)。

是否有方法在当前日期之前7天创建日期?

理想情况下,它应该是这样的:

new Date(New Date() - 7)

UPDATE:我怎么强调都不过分:JasperReports不承认JavaCalendar对象。

提问于
用户回答回答于

从现在开始:

long DAY_IN_MS = 1000 * 60 * 60 * 24;
new Date(System.currentTimeMillis() - (7 * DAY_IN_MS))

从任意Date date:

new Date(date.getTime() - (7 * DAY_IN_MS))

用户回答回答于

使用Calendar的工具创建新的日期对象getTime():

import java.util.GregorianCalendar;
import java.util.Date;

Calendar cal = new GregorianCalendar();
cal.add(Calendar.DAY_OF_MONTH, -7);
Date sevenDaysAgo = cal.getTime();

扫码关注云+社区