【发布时间】:2012-09-14 19:23:19
【问题描述】:
我正在尝试查找时区标识符的最大长度。这是用作时区名称的字符串(例如“America/New_York”)。 tz 数据库没有帮助;我找不到实现细节。
Microsoft (.NET Framework 4.5) suggests a max length of 32,但这似乎是他们注册表的限制。
libc points to a limit called "_POSIX_TZNAME_MAX", which is 3 characters long,但这是 POSIX 合规性的绝对最低要求。通常,我猜一个实现会使用更多。
所以真正的问题是:安全存储时区“tzname”/标识符名称的可接受字符串长度是多少?
【问题讨论】:
-
Microsoft .NET Framework
TimeZone.Id属性适用于与 IANA tzdb 标识符非常不同的 Windows 时区标识符。