java - 如何从iso时间中减去1分钟

标签 java datetime datetime-format

我使用下面的代码通过 java 获取 iso 时间。我想要 1 分钟的旧时间,以便从我的数据库获取 1 分钟的旧数据。 在我的数据库中时间保存为ios格式。谁能告诉我如何使用 iso 时间格式从当前时间减去 1 分钟?

//我的代码

TimeZone tz = TimeZone.getTimeZone("UTC");
        DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'");
        df.setTimeZone(tz);
        String nowAsISO = df.format(new Date());

最佳答案

使用 Calendar 类试试这个:

TimeZone tz = TimeZone.getTimeZone("UTC");
Calendar c = Calendar.getInstance();
c.setTimeZone(tz);
c.set(Calendar.MINUTE, c.get(Calendar.MINUTE) - 1);

DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'");
String nowAsISO = df.format(c.getTime());

System.out.println(nowAsISO);

关于java - 如何从iso时间中减去1分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35912982/

相关文章:

java - 通用 JDBC 异常 : could not extract ResultSet

java - 用于根据检测到的特征确定对象中心的成本/映射函数

Java 程序无法正确执行 nextLine()

matlab - 如何在 MATLAB 中将日期时间设置为 5 的倍数?

java - 由于时区不同导致时间戳时间不匹配

c# - 如何转换时间格式?

java - 正则表达式以 "ATG"开头,以 "TAG, TAA orTGA"结尾,但中间不包含 "ATG"和 "TAG, TAA or TGA"

datetime - 不能在 IronPython 中使用 DateTime

css - Vue datetimepicker - 月 View 仅显示 1 行

java - Azure SQL 数据仓库 - JVM SimpleDateFormat 支持