gpt4 book ai didi

java 日期转字符串 - 有时是 CET,有时是 CEST

转载 作者:行者123 更新时间:2023-12-02 06:35:31 25 4
gpt4 key购买 nike

奇怪的事情。我有 SQLite Android 数据库,其中日期保存为长值。我将它们读为日期对象,例如:

new Date (cursor.getLong(4))

接下来,在显示时,我使用 toString() 方法将 Date 对象转换为 String。然而,有时显示的字符串包含 CET,有时包含 CEST。

当然,添加时区信息这一事实并不令人惊讶。令人惊讶的是,在同一设备上,同时从数据库获取值,这些值是长值,因此不包含任何区域时间信息,java 有时添加 CET,有时添加 CEST。为什么会有这样的差异?

唯一的区别是,在结果 CEST 中给出的长值时间等于 00:00:00,而在结果 CET 中给出的时间不同。

有什么想法吗?

最佳答案

这些值本身完全与时区无关,但您的设备却不然。您的设备有两个时区:CET 和 CEST,作为其区域设置的一部分。夏令时曾经/现在/将要生效期间的日期以 CEST 给出,其他日期以 CET 报告。

如果您将设备设置为不遵守夏令时的区域设置,则只会报告该时区。

要了解为什么这是有道理的,请考虑一下您是否问我现在几点,我说“13:35 CEST”。由于 CEST 是 UTC+2,我是对的,但您可能会感到困惑。由于每年的这个时候不使用 CEST,因此只有以 CET 给出时间才有意义。这就是时区根据日期而变化的原因。

关于java 日期转字符串 - 有时是 CET,有时是 CEST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19695585/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com