我需要将UTC的时间转换为不同时区的时间。例如:UTC时间为1389556017000,以美国/蒂华纳时区为新纪元。
public static void main(String[] args) {
Long epoch_date = 1389556017000L;
ZonedDateTime date1= Instant.ofEpochMilli(epoch_date)
.atZone(ZoneId.of("America/Tijuana"));
long epoch_second = date1.toInstant().toEpochMilli();
System.out.println("Epoch time in new timezone is :" + epoch_second);
}
我的输出与输入相同...
答案 0 :(得分:5)
Epoch时间是绝对时间点。 它与任何时区都不相关。
例如-印度的6:30 PM与英国的1:00 PM相同。 两个时代的时代是相同的。
阅读更多内容答案 1 :(得分:3)
2014-01-12T11:46:57-08:00和2014-01-12T19:46:57Z是同一时间(称为T1)。
1970-01-01T00:00:00Z(即时代的开始)和1969-12-31T16:00:00-08:00(称为T0)是相同的时间。
时间在内部存储为T0和相关时间之间的秒数(毫秒)。
对于T1和T0之间的秒数(毫秒),只有一个答案。