Java程序以秒为单位获取两个时区之间的时差

这是两个时区-

ZoneId zone1 = ZoneId.of("America/Panama");

ZoneId zone2 = ZoneId.of("Asia/Taipei");

设置日期-

LocalDateTime dateTime = LocalDateTime.of(2019, 04, 11, 10, 5);

现在,设置第一个时区-

ZonedDateTime panamaDateTime = ZonedDateTime.of(dateTime, zone1);

设置第二时区-

ZonedDateTime taipeiDateTime = panamaDateTime.withZoneSameInstant(zone2);

获取以秒为单位的时区差异-

taipeiDateTime.getOffset().getTotalSeconds()

示例

import java.time.LocalDateTime;

import java.time.ZoneId;

import java.time.ZonedDateTime;

public class Demo {

   public static void main(String[] args) {

      ZoneId zone1 = ZoneId.of("America/Panama");

      ZoneId zone2 = ZoneId.of("Asia/Taipei");

      LocalDateTime dateTime = LocalDateTime.of(2019, 04, 11, 10, 5);

      ZonedDateTime panamaDateTime = ZonedDateTime.of(dateTime, zone1);

      ZonedDateTime taipeiDateTime = panamaDateTime.withZoneSameInstant(zone2);

      System.out.println("Difference between two time zones in seconds = "+taipeiDateTime.getOffset().getTotalSeconds());

   }

}

输出结果

Difference between two time zones in seconds = 28800

以上是 Java程序以秒为单位获取两个时区之间的时差 的全部内容, 来源链接: utcz.com/z/335303.html

回到顶部