当前位置: 首页 > 面试题库 >

如何使Date与地区无关?

戚俊美
2023-03-14
问题内容

我有一个数据库OleDateTime,以GMT时区格式存储日期。我实现了一个类,Date在Java中进行了扩展,以经典的日期格式表示该类。但是我的课程是与语言环境相关的(我在GMT
+ 2中)。因此,它将db中的日期转换为date - 2 hours。如何使其正确转换日期?我希望我的班级始终与区域设置无关,始终使用GMT时区。实际上,问题是:

class MyOleDateTime extends Date {

    static {
        Locale.setDefault(WhatGoesHere?)
    }

    // ... some constructors
    // ... some methods
}

问题答案:

好吧,最好像其他答案中所建议的那样使用Calendar对象。但是,如果您 确实
要设置全局时区,则可以TimeZone.setDefault(TimeZone.getTimeZone("UTC"));应用程序代码的早期使用。还有user.timezoneJava系统属性。

同样(很高兴知道),似乎按格林尼治标准时间/世界协调时间(不夏令时更改)实际居住的唯一国家是利比里亚。

实际上,Date对象本身 总是 与语言环境和时区无关。它的getTime()方法将始终返回自 UTC
以来从1970年1月1日00:00:00开始经过的毫秒数(不计算leap秒)。但是,如果你想要得到的东西比别的毫秒,你必须使用Calendar,这
时区相关。但这是正确的方法。您不在类中使用不赞成使用的方法Date,对吗?



 类似资料:
  • 问题内容: 在一个JS应用程序中,我从服务器(Ajax)收到时间戳(等价)。 基于该时间戳,我使用以下对象创建对象: 现在,解码当前用户区域设置时区中的时间戳。我不要 我想_ 将这个时间戳转换为欧洲赫尔辛基市的当前时间(不考虑用户的当前时区)。 我怎样才能做到这一点? 问题答案: Date对象的基础值实际上是UTC。为了证明这一点,请注意,如果您键入内容,则会看到类似:的信息。GMT中将0视为0,

  • 问题内容: 我正在尝试将Json日期字符串转换为Java日期格式。但是,当涉及到“ return df.parse(tarih)”行时,它将给出错误。 JSON: Java代码: 当我调用此方法时,tarih参数为:/ Date(1323087840000 + 0200)/ 问题答案: 因为您对某个对象感兴趣,所以我认为JSON是Unix时间戳。 因此,我建议您使用Date(long毫秒)构造函数

  • 问题内容: 假设如果我的包装div包含一些链接和图像,那么有什么方法可以仅通过CSS一次将其停用? 在查看答案之后: 我放弃了仅可以使用CSS实现的想法。jQuery blockUI插件的魅力非常大。 问题答案: 如果您要使用jQuery,则可以使用blockUI插件轻松完成此操作。…或使用CSS回答您的问题,您必须将div绝对定位在要阻止的内容上。只需确保绝对定位的div位于为z索引目的而被阻止

  • 我是Android开发新手,我正在尝试以下代码: 我明白了: 隐式使用默认语言环境是常见的错误源: 使用字符串。格式(区域设置,…)相反 我不知道如何修改代码以实现建议。

  • 2.我尝试创建一个注册表,然后将图像放入其中,但这也不起作用。我可能做错了,但我找不到正确的指令来完成这项任务。 请提供在本地kubernetes实例中使用本地docker映像的说明。 OS:ubuntu 16.04 Docker:Docker版本1.13.1,版本092CBA3 Kubernetes: 如果有人能帮我找到一个使用docker-compose的解决方案,那就太棒了。

  • 问题内容: 我有一些代码尝试解析日期字符串。 当我这样做时, 它会正确解析日期,并且一切正常,但是我无法调用与关联的方法,例如。 当我尝试: 我收到“无效日期”错误。 关于如何使用新的Date()解析“ 2010-08-17 12:09:36”的任何想法? 问题答案: 日期() 这样,您可以调用一个名为的函数。它不接受任何参数,并返回表示当前日期和时间的字符串。 新的Date() 这样,您将创建一