1
0
类java.util.Date不包含时区信息。 就其而言,2018年7月13日17:31:02印度时间与2018-07-13 12:01:02.417 UTC时间完全相同。因为当你不在乎时区的时候,它实际上是同时发生的。它没有任何能力来区别两者。 因此,当您将日期UTC解析为java.util.date类型的对象时,您可以获得它所表示的时间的正确信息,但会丢失它被读取为UTC这一事实的所有信息。 如果你要求System.out.println()写出这个日期,它需要找出一种人性化的方法来写出它,而通常的方法是根据选定的时区写出日期。由于java.util.Date没有时区信息,System.out.println()选择一个自己的时区,并选择计算机的默认时区,因为这是唯一的逻辑选择。您可以使用日期格式来指定您希望如何写出此日期,包括但不限于哪个时区。
但实际上,java.util.Date类和相关的类已经过时。您需要升级到java 8的新java.time包。在您的例子中,由于您对保留时区信息感兴趣,因此需要将时间存储在类对象中
|
AdSR · 使用Jackson将JSON反序列化为异构元素列表 6 年前 |
tgr · 将不匹配的数据模型从XML转换为JSON的最佳实践 6 年前 |
Josh Maag · Spring Boot JSON空序列化 6 年前 |