我JasperReport中有这样的代码,就像< code > new simple date format(" DD/MM/yyyy ")。format(new Date())-24 * 3600 * 1000 但是它不起作用,我正在尝试从今天开始减去一天。但它是这样显示今天的
<textFieldExpression><![CDATA["Test: " + new SimpleDateFormat("dd/MM/yyyy").format(new Date()) - 24 * 3600 * 1000]]></textFieldExpression>
就我所见,这段代码显然忽略了-24*3600*1000
,因为表达式new SimpleDateFormat(“dd/MM/yyyy”)。format(new Date())
决定在尝试减去一天之前的值,忽略后面的算术。它只考虑今天的new Date()
。
您应该在格式化之前包含计算,例如。
new SimpleDateFormat("dd/MM/yyyy").format(new Date(System.currentTimeMillis() - (24 * 3600 * 1000)))
如果您使用的是Java8或更高版本,我会使用Java。时间
,可能如下:
LocalDate.now().minusDays(1).format(DateTimeFormatter.ofPattern("dd/MM/uuuu")
问题内容: 想要改善这篇文章吗? 提供此问题的详细答案,包括引文和答案正确的解释。答案不够详细的答案可能会被编辑或删除。 有谁知道约会(例如今天)和回溯X天的简单方法吗? 因此,例如,如果我想计算今天之前5天的日期。 问题答案: 尝试这样的事情: 请注意,这将修改日期对象并返回更新日期的时间值。
问题内容: 我有一个对象。减去一天的最佳方法是什么? 问题答案: 你可以使用对象:
问题内容: 我正在从SQL数据库中提取日期,该日期将其视为从午夜开始的日期。当我开始使用它们时,它会正确格式化它们,但是不会浪费一天。 格式化之前: 格式化后: 代码: 问题答案: 如果您分段运行代码,则会注意到产生的输出类似(我的计算机现在处于EDT中)。 这是因为(doc): 假定时区的差异 给定日期字符串为“ 2014年3月7日”,parse()假定为本地时区,但是给定ISO格式(如“ 20
问题内容: 我想从bash日期中减去“天数”。我正在尝试这样的事情.. 问题答案: 您输入的日期不正确。相反,说: 如果需要将其存储在变量中,请使用:
我想知道在FreeMarker中从今天的日期减去日期的最好方法是什么? 我有一个用户的注册日期在这种格式:2015-06-15 05:12:35.890,我要做的是得到他们注册到现在之间的年数。(全年,不需要1年6个月/1.5年为例) 谁能告诉我做这件事的最好方法吗?
问题内容: 这种情况 我想使用的用户界面的最新设置/编辑的日期在我的应用程序。我使用的是angular,angular-ui,jquery- ui等的最新稳定版本。 问题 使用日期选择器选择日期后,模型中的日期将等于所选日期减去1天。它也将发送到我的服务器并以这种方式保存在我的数据库中。 窃听器 http://plnkr.co/edit/Ft14Wa?p=preview 最初,日期选择器输入中的日