问题标签 [zoneinfo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
4538 浏览

javascript - 如何在 JavaScript 中确定系统的 Olson zoneinfo?

我有兴趣检索用户当前在 JavaScript 中为其操作系统设置的当前 zoneinfo 字符串(“America/Los Angeles”、“Europe/London”等)。我找到了如何以秒为单位获取当前偏移量、特定日期的偏移量以及不太精确的时区(PST 等),但不是 Olson zoneinfo。这可能吗?

0 投票
3 回答
966 浏览

.net - 无论如何我可以将“澳大利亚/墨尔本”时区转换为一些.net基类库对象吗?

我有一些来自第 3 方的数据,其中包括一些string Language属性数据。检索到的一些示例数据如下所示:

“澳大利亚/墨尔本”

当我调查属性数据类型基于什么时,它是Zone Info (tz database / Olson database)。是吗?我用谷歌搜索,这是信息....

听起来它被许多主要平台使用......但不是 .NET。

那么,在我重新发明轮子之前(或者,更确切地说,从那个 codeplex 站点更新代码以将 db 列表嵌入到 dll 中),这是否已经存在于 .NET 基类库中?

0 投票
2 回答
286 浏览

asp.net - 我可以从 IPAddress 确定 ZoneInfo 吗?

无论如何我可以计算出估计的(奥尔森)ZoneInfo值(例如(“美国/洛杉矶”,“欧洲/伦敦”等),用于.NET中的单个公共IP地址......?

我已经有了 ZoneInfo 值的完整列表,所以这不是问题......并且在下拉框中。我只想根据 IP 默认选择一个值。

我知道 IP 不会 100% 准确,并且代理可能会破坏事情......但这是为了获得一个粗略的价值。

这可能吗?

我在想有可能将 ZoneInfo 值关联到 GMT 时区 .. 也许?

是的.. .NET 请。

干杯!

(感谢 OpenID 使用 ZoneInfo 而不是 GMT 时区:()

更新

我发现这个页面描述了区域和纬度/经度之间的关系。因此是否有可能(例如,有人想建议一些代码示例?)如何使用 Lat Long 确定正确的 ZoneInfo?

0 投票
2 回答
842 浏览

java - javazic 时区格式

我在哪里可以找到关于javazic(Debian 软件包中附带的文件tzdata-java)输出的二进制数据格式的文档?

中使用的标准格式/usr/share/zoneinfo没有明确的夏令时与标准时间的概念。它只知道一个时区在一年中的不同时间与 UTC 有不同的偏移量。

然而,有一些库(如 Boost 的time_zone_base类和 Ruby TZInfo库)更喜欢将时区视为具有“标准时间”,然后是夏令时,与标准时间有一些偏移,所以它们不是真正与标准 zoneinfo 文件兼容。

javazic很久以前看过格式的文档,我似乎记得格式中包含的数据javazic可能比格式更适合这些库zoneinfo。但我不记得文档在哪里。

0 投票
0 回答
271 浏览

mysql - 在没有 zoneinfo 的情况下处理 MySQL 中的时区

在没有导入 zoneinfo 的情况下,似乎没有办法让 MySQL 从时间戳返回格式化时间。

如果我使用

我为 11 月 1 日下午 6:00 创建了一个时间戳,当夏令时过去时,时区更改为 -5:00,该事件将不再在正确的时间显示。

是否可以从应用程序加载时区数据?或者我是否需要将我的所有时间戳作为 UNIX 时间戳并在应用程序中进行转换?如果是这样,那将阻止我正确排序没有时间为 12:00 AM 的日期,而不管 MySQL 中的时区如何。

为了澄清最后一点,我有一个日期列,当时间戳为空时,它会转换为时间戳。它看起来像:

为了澄清评论:这被存储为时间戳并转换为本地时间。可以返回跨越 DST 更改的多个事件。我最终将所有时间都转换为 PHP,这很不方便,因为它需要 PHP 5.1 或更高版本。

0 投票
1 回答
1424 浏览

cocoa - 如何将 tz 数据库名称映射到城市和国家名称?

是否有从 tz 数据库(又名 zoneinfo 数据库,又名 Olson 数据库)ID 到城市和国家/地区的公开可用映射?例如:

... 等等。

理想情况下,映射将:

  • 以不同的语言提供,例如"Europe/Paris"映射到"Paris, France"英语、"Paris, Frankrike"瑞典语和"パリ、フランス"日语。
  • 每个 tz 条目有多个选项以覆盖更多城市。例如,堪培拉(澳大利亚的首都)不在 tz 数据库中,但可以映射到"Australia/Sydney"

iPhone 上的内置世界时钟应用程序实现了这一点。iOS 上的时区 API 依赖于 tz 数据库,但在为新的世界时钟选择时区时,用户可以选择“澳大利亚堪培拉”、“澳大利亚悉尼”、“伊拉克巴格达”、“法国巴黎”等. World Clock 应用程序可能使用的底层NSTimeZoneAPI 不会公开此信息,因此数据必须在应用程序中提供,而不是在底层操作系统中提供。

有谁知道这个映射在哪里可以找到?

0 投票
1 回答
865 浏览

python - python - 远程主机时区与本地

我正在构建一个用于远程日志监控的 Web 前端,
必须管理大约 10 个不同的地理位置,我遇到了你们中的一些人已经拥有的 3 头地狱犬。

有什么方法可以从远程 HPUX shell 变量中获取以下远程信息:

  • zoneinfo(国家/城市)
  • UTC + 偏移量(我可以从 zoneinfo 轻松获得)

到目前为止,我能得到的最好的是操作系统缩写的时区(这是否足以通过静态构建的 pytz.common_timezones 集合迭代地跨越远程时间并将缩写的区域反向转换为国家/城市,或者我完全走错了路? )

获得国家/城市(我没有)后,我可以轻松获得偏移量

'TLT +0900'

  • 获取远程缩写时区,

(Linux 有更理智的

输出如
ZONE="Europe/London"
而 HP-UX /etc/TIMEZONE 使用缩写时区,如
TZ=CAT-2

我会使用 echo $TZ ,它会输出一些更有用的数据,比如 CAT-2,但是一些远程 HP-UX 甚至没有配置这个,因此迫使我依赖模棱两可的 RFC822 日期,

我已经查看了 pytz、datetime.datetime、email.Utils,但考虑到直接从缩写时间转换为 zoneinfo 国家/城市(pytz 允许相反)是不可能
的远程时区,并在接受注册远程主机的用户输入时添加一个国家/城市下拉列表?

编辑(部分解决方案)

以@Mike Pennington 回答为基础

0 投票
4 回答
6179 浏览

r - as.POSIXct 给出了一个意外的时区

我正在尝试将yearmon日期(来自zoo包)转换为 UTC 时区中的 POSIXct。这就是我试图做的:

转换日期时得到相同的结果:

让它工作的唯一方法是传递一个字符作为参数:

我查看了DateTimeClassestzsettimezones的文档。我的 /etc/localtime 设置为 Europe/Amsterdam。除了设置 TZ 环境变量之外,我找不到将 tz 设置为 UTC 的方法:

从 yearmon 或 Date 创建 POSIXct 时是否可以直接设置时区?

编辑:

我检查了函数 as.POSIXct.yearmon。这个传递给 as.POSIXct.Date。

所以就像 Joshua 说的时区在 as.POSIXct.Date 中丢失了。现在我将使用 Richies 的建议来手动设置 tzone:

attr(x, "tzone") <- 'UTC'

这解决了丢失 tzone 的问题,它仅用于演示,而不像 Grothendieck 和 Dwin 建议的那样在内部使用。

0 投票
1 回答
508 浏览

c# - 将 DataTime 时区编号转换为文本值,例如:EST

我正在寻找一种输出/格式化的方法

变成更有意义的格式,比如

0 投票
2 回答
469 浏览

linux - 如何在不使用日期的情况下更改当地时间

它是一个远程服务器,所以没有安装 GUI 或花哨的东西,我使用 SSH 连接到该主机。我想出于安全原因,我不能使用“date -s”命令来更改本地服务器的当前时间。

'date' 显示的时间大约提前 10 分钟,我尝试将正确的时间从 /usr/share/zoneinfo(在我的例子中是纽约)链接到 /etc/localtime,但没有真正改变,我的时钟仍然是 10 分钟不同步。

我是否必须使用 zic 生成新的时区二进制文件?是的?如何?不?我还能尝试什么?

提前感谢一堆。/s