java - 如何计算1个月前的毫秒数?

标签 java date

我想从当前时间计算 1 个月前的时间(以毫秒为单位)。例如,如果日期是 25.11.2016 那么我想以毫秒格式获取 25.10.2016。如何以毫秒为单位计算此日期?我认为以下代码无法正常工作。

System.currentTimeMillis() - 1000*60*60*24*30 

最佳答案

你可以这样使用:

Calendar c = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
c.add(Calendar.MONTH, -1);
long result = c.getTimeInMillis();

请注意,System.currentTimeMillis() 使用的是 UTC,因此您需要使用相同的时区创建一个日历实例。

关于java - 如何计算1个月前的毫秒数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40486019/

相关文章:

java - 在Java中将HHMM字符串转换为GMT格式

java - 我需要使用 volatile 吗?

java - 如何将 Zest Graph 的一部分复制到 SWT Canvas

Java - 枚举和构造函数内的函数/变量的问题

Python 使用 timedelta 数据的 .seconds 属性给出错误结果

c# - 用于匹配多种日期格式的正则表达式

java - 为什么 Java 的 SimpleDateFormat 类是非线程安全的?

java - 如何将日期从英语转换为阿拉伯语

java - Spring 安全: sporadic NullPointerException

java - SwingWorker 代码问题