考虑夏令时的当前/活动时区的完整列表?

问题描述 投票:0回答:1

有人知道一种可靠的方法来获取截至“今天”的当前活动时区列表,并考虑夏令时吗?

我找到了 IANA 时区数据库等资源以及 https://timezonedb.com/https://24timezones.com/time-zones 等网站,它们将为我提供时区及其相关偏移量的列表,但到目前为止,他们都没有给我一个可靠的列表,说明当前和准确的时区和相关偏移量,他们都将下一步的确定留给我,而我的技术知识无法应对这一挑战.

对我来说理想的资源是 IANA 格式的时区表、时区缩写和当前活动偏移量:

时区 缩写 偏移
澳大利亚/布里斯班 澳大利亚东部时间 UTC+10
美国/纽约 东部时间 UTC-4

等等。

有人熟悉类似的事情吗?

datetime time timezone timezone-offset datetimeoffset
1个回答
0
投票

如果您有可用的 C++20,您可以编写一个非常短的程序来生成这样一个表的数据:

#include <chrono>
#include <format>
#include <iostream>

int
main()
{
    using namespace std;
    using namespace chrono;
    auto now = system_clock::now();
    for (auto const& tz : get_tzdb().zones)
    {
        auto info = tz.get_info(now);
        cout << tz.name() << "\t" << format("{:%Z%tUTC%Ez\n}", zoned_time{&tz, now});
    }
}

这不会为您提供整洁的 html 表格,但它会为您提供所有数据。

演示。

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