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

codeday· 2019-12-31
本文来自 codeday ,作者 codeday
是否存在从tz数据库(又名zoneinfo数据库,又名Olson数据库)ID到城市和国家的公共可用映射?例如:

"Pacific/Auckland" => "Auckland, New Zealand"
"Europe/Copenhagen" => "Copenhagen, Denmark"
"Europe/Paris" => "Paris, France"
"Europe/Moscow" => "Moscow, Russia"
"Asia/Tokyo" => "Tokyo, Japan"
"Asia/Baghdad" => "Baghdad, Iraq"
"Africa/Cairo" => "Cairo, Egypt"

… 等等.

理想情况下,映射将:

>提供不同的语言,例如“欧洲/巴黎”对应英语的“法国巴黎”,瑞典语对应的“巴黎,弗兰克瑞克”以及日语对应“パリ,フランス”.
>每个tz条目都有多个选项,以覆盖更多城市.例如,堪培拉(澳大利亚的国会大厦)不在tz数据库中,但是可以映射到“ Australia / Sydney”

iPhone上内置的World Clock应用程序可以实现此目的. iOS上的时区API依赖于tz数据库,但是在为新的世界时钟选择时区时,用户可以从“澳大利亚堪培拉”,“澳大利亚悉尼”,“巴格达,伊拉克”,“巴黎,法国”等中进行选择World Clock应用可能使用的基础NSTimeZone API不会公开此信息,因此必须在应用中提供数据,而不是在基础OS中提供数据.

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

最佳答案
该代码具有国家名称到时区的映射…

https://gist.github.com/986163