java - 如何在 Java 中以 UTC 或 GMT 格式获取当前日期和时间?

标签 java date localization timezone gmt

想改进这篇文章吗?提供此问题的详细答案,包括引文和解释为什么您的答案是正确的。没有足够详细信息的答案可能会被编辑或删除。








当我创建一个新的 Date对象,它被初始化为当前时间,但在本地时区。如何获得格林威治标准时间的当前日期和时间?

最佳答案

java.util.Date没有特定的时区,尽管它的值最常被认为与 UTC 相关。是什么让你觉得现在是本地时间?

准确地说:java.util.Date 内的值是自 Unix 纪元(UTC 时间 1970 年 1 月 1 日午夜)以来的毫秒数。同一个纪元也可以用其他时区来描述,但传统的描述是用 UTC 来描述的。由于它是自固定纪元以来的毫秒数,因此 java.util.Date 内的值无论本地时区如何,世界各地的任何特定时刻都是相同的。

我怀疑问题在于您通过使用本地时区的 Calendar 实例显示它,或者可能使用 Date.toString()它也使用本地时区,或 SimpleDateFormat实例,默认情况下也使用本地时区。

如果这不是问题,请发布一些示例代码。

但是,我建议您使用 Joda-Time无论如何,它提供了更清晰的 API。

关于java - 如何在 Java 中以 UTC 或 GMT 格式获取当前日期和时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/308683/

相关文章:

java - 如何为 Java 应用程序制作安装程序?

java - 使用 JNA 将 C 数组返回给 Java

java - 异步方法中的 Spring Boot while 循环停止应用程序

sql-server - 年函数不支持 dt_wstr

java 网页本地化支持

java - java.lang.System.properties 的内容是否随区域设置而变化?

java - 无法使用 java 程序编辑 .java 文件

c# - 如何在 C# 中获取 12 个月后的日期

php - 返回一周中特定日期给定范围内的日期数组,排除某些日期

iphone - Localized.strings 已损坏?