如何从 iso 时间中减去 1 分钟
How to deduct 1 min from iso time
我使用下面的代码通过 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
class:
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);
这应该可以正常工作:
LocalDateTime ldt = Instant.now()
.atZone(ZoneId.systemDefault())
.toLocalDateTime()
.minusMinutes(1);
我使用下面的代码通过 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
class:
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);
这应该可以正常工作:
LocalDateTime ldt = Instant.now()
.atZone(ZoneId.systemDefault())
.toLocalDateTime()
.minusMinutes(1);