timezone 相关问题

时区是地球上具有统一的法律规定标准时间的区域。它通常由标识符表示,例如“America / Los_Angeles”。不要将-07:00之类的偏移误认为是时区。时区远不止于此。有关详细信息,请阅读整个标记维基。

更改时区后,Boost本地时间不会更新,直到程序重新启动

boost版本1.71.0,操作系统Ubuntu 20 #包括 #包括 #包括 #包括 Boost 版本 1.71.0,操作系统 Ubuntu 20 #include <iostream> #include <boost/date_time/c_local_time_adjustor.hpp> #include <boost/date_time/posix_time/posix_time.hpp> #include <thread> int main(int argc, char const* argv[]) { while (true) { auto utc_now = boost::date_time::second_clock<boost::posix_time::ptime>::universal_time(); auto now = boost::date_time::c_local_adjustor<boost::posix_time::ptime>::utc_to_local(utc_now); std::cout << "now: " << to_simple_string(now) << std::endl; std::this_thread::sleep_for(std::chrono::seconds(10)); } return 0; } 运行此代码后,我使用 timedatectl 更改时区,并且这些更改不会显示在程序中,直到我重新启动它: ./program now: 2024-Mar-12 12:30:09 # in another terminal change the timezone: sudo timedatectl set-timezone <some new timezone> now: 2024-Mar-12 12:30:19 # the same local time, was not updated 如果再次运行程序,当地时间会更新: ./program now: 2024-Mar-12 06:30:25 # new local time 如何让程序运行时更新当地时间? 通过查看 boost::datetime 的源代码,utc_to_local() 调用了一个名为 localtime() 的内部函数,该函数又调用了 POSIX 函数localtime_r()。 如联机帮助页注释部分中所指定, 根据 POSIX.1-2004,localtime() 需要表现得像 tzset(3) 被调用,而 localtime_r() 没有这个 要求。对于可移植代码,应在之前调用 tzset(3) localtime_r()。 总而言之,glibc 库函数 localtime_r() 的行为并不像人们预期的那样,当时区更改时,您需要每次调用 tzset() 来检索预期结果。 Boost 库没有(也许是出于优化目的),因此您必须自己调用它,如果您打算编写可移植代码,请将其包装在 #ifdefs 中。 我不知道 boost 函数的行为(即不考虑时区变化)是错误还是“功能”。

回答 1 投票 0

如何解析时区偏移字符串?

我从数据库中检索时区偏移值。我得到的价值是及时的。 例如,它可以是“-5:00”、“+7:30”、“+3:00”等。 我如何将其转换为双精度,以便我可以执行

回答 2 投票 0

如何在iPhone模拟器中更改时间和时区?

如何在 iPhone 模拟器中更改时间和时区?

回答 12 投票 0

更改 ZoneId 的时区偏移量

我正在初始化 TimeZone,如下代码所示: TimeZone timeZone = TimeZone.getTimeZone("亚洲/阿拉木图"); 但现在它已经抵消了: 21600000 我刚刚写道: System.out.println("TZ : &q...

回答 1 投票 0

在全球范围内使用 Python 处理当地时间

我正在开发一个应用程序,其中事件在特定时间发生。事件创建者可以在夏令时可能适用或不适用的时区创建事件。因此,

回答 1 投票 0

如何将日期时间/时间戳从一个时区转换为另一个时区?

具体来说,给定我的服务器的时区(系统时间角度)和时区输入,我如何计算系统时间,就好像它处于新时区一样(无论夏令时,...

回答 5 投票 0

Docker 容器时区保持为 UTC

我一直在将我的 ms-sql docker 容器设置为使用 Linux 主机日期时间设置。我正在使用 docker-compose 文件,在大多数情况下,解决方案似乎是映射卷...

回答 3 投票 0

早上谈话时捕捉适当的时间

如果我在早上进行对话并说昨天,则花了2024年2月14日而不是2024年2月15日。我认为如果我在中午之后进行对话,这可能是时区问题,它会捕获日期亲...

回答 1 投票 0

QDateTime 与时区隔离?

我正在寻找来自 qt 的日期时间,以将字符串作为 isodate 返回给我,但带有时区。 我有时在网上查找我的问题,但没有找到解决方案 我刚刚得到这个: 这->ui。

回答 1 投票 0

Spring Boot JPA 应用程序中的时区问题

我在 Spring Boot jpa 应用程序中面临日期时间问题。 例如,在我的数据库中,我有一列created_on,其中包含2019-07-11 09:30:00日期。 当我通过 JPA 获取这条记录时...

回答 5 投票 0

TimeZoneInfo.TryConvertWindowsIdToIanaId 支持哪些区域?

我正在尝试获取 .net8 应用程序上的所有 Iana 时区。我无法使用任何开源包,因此我只能将 DotNetIds 从 Windows 注册表中提取出来。现在,我正在迭代......

回答 1 投票 0

如何更改 docker 容器中的时区?

我正在为我的开发堆栈运行 docker 容器,该容器是我从 docker-hub 中提取的,该映像是为与我的应用程序应该部署的时区不同的时区创建的。 我该如何...

回答 10 投票 0

`convert_time_zone` 函数根据为 Polars 中每行指定的时区检索值

我正在尝试使用 Polars 根据每行中指定的时区来确定时间。考虑以下代码片段: df = pl.DataFrame({ “时间”:[日期时间(2023,4,3,2),

回答 1 投票 0

如何在java中将时区名称转换为时区代码?

有一个程序输入时区名称,如“亚洲/新加坡”。需要将其转换为相应的区域代码,如'SGT'。但是,ZoneId类似乎没有任何方法......

回答 1 投票 0

在java中将时区名称转换为时区代码

我的程序输入是时区名称,如“亚洲/新加坡”。 我需要将其转换为相应的区域代码,如SGT。 ZoneId 类似乎没有任何方法。 什么是最方便的方法...

回答 1 投票 0

在 Apache IoTDB 中设置时区之前应该识别什么时间戳?

我知道Apache IoTDB可以设置时间序列数据的不同时区。我是否可以理解,在不同时区部署 Apache IoTDB 时,所有不同时区都可以使用默认时间...

回答 1 投票 0

从 Python ZoneInfo 创建 TZ 字符串

我可以轻松获取我选择的时区的 ZoneInfo 对象: 导入区域信息 ct = zoneinfo.ZoneInfo('美国/芝加哥') 我需要为嵌入式系统创建一个 TZ 环境变量......

回答 1 投票 0

Docker:在 docker-compose.yml 中设置时区

在 docker-compose.yml 中,我有两个选项来定义容器内的时区: 使用环境变量 环境: TZ:“美国/洛杉矶” 或者从

回答 1 投票 0

程序员对时间的错误信念

我刚刚经历了关于时间+数字2的错误程序员信念。其中大多数分为三组: 闰年/秒 尼泊尔的UTC+0545 夏令时 但有几个我找不到...

回答 1 投票 0

Django 从 postgres 数据库检索错误的日期时间对象(时区被覆盖)

我在 Django、psycopg 和 PostgreSQL 中遇到了有关处理时区感知日期时间的问题。以下是我的设置的详细信息以及我面临的问题: 环境 图书馆

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.