java 8即时与时间00:00:00转换为util,Date后给出时间02:00:00

java 8 instant with time 00:00:00 gives time 02:00:00 after conversion to util,Date

我在将java.time.Instant转换为java.util.Date时遇到问题:

1
2
System.out.println(item.getStart()); // getStart returns instant
System.out.println(Date.from(item.getStart()));

给出输出:

1
2
2017-08-29T00:00:00Z
Tue Aug 29 02:00:00 CEST 2017

为什么在约会时间是02:00:00? 以及如何按时间00:00:00进行转换


2017-08-29T00:00:00Z中,Z表示Zulu,表示UTC+0
所以它描述的时间与Tue Aug 29 02:00:00 CEST 2017 UTC+2完全相同

它被打印为CEST,因为toString()方法的默认实现使用默认时区。

您可以尝试使用Java8 LocalDate。 它没有任何时间信息。

如何进行转换,你可以在这里看到:https://stackoverflow.com/a/35187046/1199731