当我创建一个新Date对象时,它将被初始化为当前时间,但是在本地时区。如何获取格林尼治标准时间的当前日期和时间?
java.util.Date尽管它的值通常是与UTC有关的,但它没有特定的时区。是什么让你认为这是当地时间?
java.util.Date
准确地说:a内的值java.util.Date是自Unix时代(UTC)在1970年1月1日午夜开始的毫秒数。相同的纪元也可以在其他时区进行描述,但是传统的描述是以UTC表示的。由于距固定纪元以来的毫秒数,因此在java.util.Date世界各地的特定时刻,无论本地时区如何,其值都相同。
a
我怀疑问题在于你是通过使用本地时区的Calendar实例显示它,还是通过使用本地时区的Calendar实例显示(默认情况下也使用本地时区Date.toString()的SimpleDateFormat实例)。
Calendar
Date.toString()
SimpleDateFormat
如果这不是问题,请发布一些示例代码。