国家与时区映射数据库

24

我正在考虑构建一个表单,提示用户输入他们的时区。我查看了“Google方法”,它似乎运行良好。您首先从下拉列表中选择一个国家,根据选择,它会填充下拉列表中的时区选项。我已经搜索了所有相关的数据库以获取国家 - 时区关系的信息,但似乎找不到。是否有人知道在哪里可以找到这样的信息?


什么语言?平台是什么? - marc_s
1
如果您只需要带有时区的国家代码,您可以使用此数据集:https://gist.github.com/adriaanvanrossum/cd1ae16b02fe812959a6b5161a32a380 - adriaan
8个回答

12
使用Noda Time和.NET Framework的Culture和TimeZoneInfo类 我们成功创建了一个Json文件,其中包含以下内容:
  • CountryName(国家名称)
  • 2LetterIsoCountryCode(2个字母的ISO国家代码)
  • 3LetterIsoCountryCode(3个字母的ISO国家代码)
  • IANATimezones(IANA时区)
  • WindowsTimezones(Windows时区)
每个条目都包含每个国家可用时区列表。 此处为Json文件。

1
这里的最佳答案 - Ceddy Muhoza

7

time.tab链接已损坏 :( - Dan

7

你尝试过使用zoneinfo吗?http://www.twinsun.com/tz/tz-link.htm

这个公共领域的时区数据库包含代码和数据,表示全球许多代表性位置的本地时间历史。它定期更新以反映政治机构对时区边界、UTC偏移和夏令时规则所做的更改。该数据库(通常称为tz或zoneinfo)由几种实现使用,包括在GNU/Linux、FreeBSD、NetBSD、OpenBSD、Cygwin、DJGPP、AIX、Mac OS X、OpenVMS、Oracle Database、Solaris、Tru64和UnixWare中使用的GNU C库。

希望这有所帮助 :)


1
看起来这个链接已经失效了。 - Nikhil Baliga

3

2

timezonedb: https://timezonedb.com/

此外,还可以提到timezonedb。您可以访问下载页面并找到最适合您项目的格式。


1
[
{name: "Afghanistan", code: "AF", gmt: "(UTC+04:30)"},
{name: "Albania", code: "AL", gmt: "(UTC+01:00)"},
{name: "Algeria", code: "DZ", gmt: "(UTC+01:00)"},
{name: "Argentina", code: "AR", gmt: "(UTC-03:00)"},
{name: "Armenia", code: "AM", gmt: "(UTC+04:00)"},
{name: "Australia", code: "AU", gmt: "(UTC+11:00)"},
{name: "Austria", code: "AT", gmt: "(UTC+01:00)"},
{name: "Azerbaijan", code: "AZ", gmt: "(UTC+04:00)"},
{name: "Bahrain", code: "BH", gmt: "(UTC+03:00)"},
{name: "Bangladesh", code: "BD", gmt: "(UTC+06:00)"},
{name: "Belarus", code: "BY", gmt: "(UTC+03:00)"},
{name: "Belgium", code: "BE", gmt: "(UTC+01:00)"},
{name: "Belize", code: "BZ", gmt: "(UTC-06:00)"},
{name: "Bhutan", code: "BT", gmt: "(UTC+06:00)"},
{name: "Bolivia", code: "BO", gmt: "(UTC-04:00)"},
{name: "Bosnia and Herzegovina", code: "BA", gmt: "(UTC+01:00)"},
{name: "Botswana", code: "BW", gmt: "(UTC+02:00)"},
{name: "Brazil", code: "BR", gmt: "(UTC-02:00)"},
{name: "Brunei", code: "BN", gmt: "(UTC+08:00)"},
{name: "Bulgaria", code: "BG", gmt: "(UTC+02:00)"},
{name: "Cambodia", code: "KH", gmt: "(UTC+07:00)"},
{name: "Cameroon", code: "CM", gmt: "(UTC+01:00)"},
{name: "Canada", code: "CA", gmt: "(UTC-03:30)"},
{name: "Chile", code: "CL", gmt: "(UTC-04:00)"},
{name: "China", code: "CN", gmt: "(UTC+08:00)"},
{name: "Colombia", code: "CO", gmt: "(UTC-05:00)"},
{name: "Congo (DRC)", code: "CD", gmt: "(UTC+01:00)"},
{name: "Costa Rica", code: "CR", gmt: "(UTC-06:00)"},
{name: "Côte d’Ivoire", code: "CI", gmt: "(UTC+00:00)"},
{name: "Croatia", code: "HR", gmt: "(UTC+01:00)"},
{name: "Cuba", code: "CU", gmt: "(UTC-05:00)"},
{name: "Czech Republic", code: "CZ", gmt: "(UTC+01:00)"},
{name: "Denmark", code: "DK", gmt: "(UTC+01:00)"},
{name: "Djibouti", code: "DJ", gmt: "(UTC+03:00)"},
{name: "Dominican Republic", code: "DO", gmt: "(UTC-04:00)"},
{name: "Ecuador", code: "EC", gmt: "(UTC-05:00)"},
{name: "Egypt", code: "EG", gmt: "(UTC+02:00)"},
{name: "El Salvador", code: "SV", gmt: "(UTC-06:00)"},
{name: "Eritrea", code: "ER", gmt: "(UTC+03:00)"},
{name: "Estonia", code: "EE", gmt: "(UTC+02:00)"},
{name: "Ethiopia", code: "ET", gmt: "(UTC+03:00)"},
{name: "Faroe Islands", code: "FO", gmt: "(UTC+00:00)"},
{name: "Finland", code: "FI", gmt: "(UTC+02:00)"},
{name: "France", code: "FR", gmt: "(UTC+01:00)"},
{name: "Georgia", code: "GE", gmt: "(UTC+04:00)"},
{name: "Germany", code: "DE", gmt: "(UTC+01:00)"},
{name: "Greece", code: "GR", gmt: "(UTC+02:00)"},
{name: "Greenland", code: "GL", gmt: "(UTC-03:00)"},
{name: "Guatemala", code: "GT", gmt: "(UTC-06:00)"},
{name: "Haiti", code: "HT", gmt: "(UTC-05:00)"},
{name: "Honduras", code: "HN", gmt: "(UTC-06:00)"},
{name: "Hong Kong SAR", code: "HK", gmt: "(UTC+08:00)"},
{name: "Hungary", code: "HU", gmt: "(UTC+01:00)"},
{name: "Iceland", code: "IS", gmt: "(UTC+00:00)"},
{name: "India", code: "IN", gmt: "(UTC+05:30)"},
{name: "Indonesia", code: "ID", gmt: "(UTC+07:00)"},
{name: "Iran", code: "IR", gmt: "(UTC+03:30)"},
{name: "Iraq", code: "IQ", gmt: "(UTC+03:00)"},
{name: "Ireland", code: "IE", gmt: "(UTC+00:00)"},
{name: "Israel", code: "IL", gmt: "(UTC+02:00)"},
{name: "Italy", code: "IT", gmt: "(UTC+01:00)"},
{name: "Jamaica", code: "JM", gmt: "(UTC-05:00)"},
{name: "Japan", code: "JP", gmt: "(UTC+09:00)"},
{name: "Jordan", code: "JO", gmt: "(UTC+02:00)"},
{name: "Kazakhstan", code: "KZ", gmt: "(UTC+06:00)"},
{name: "Kenya", code: "KE", gmt: "(UTC+03:00)"},
{name: "Korea", code: "KR", gmt: "(UTC+09:00)"},
{name: "Kuwait", code: "KW", gmt: "(UTC+03:00)"},
{name: "Kyrgyzstan", code: "KG", gmt: "(UTC+06:00)"},
{name: "Laos", code: "LA", gmt: "(UTC+07:00)"},
{name: "Latvia", code: "LV", gmt: "(UTC+02:00)"},
{name: "Lebanon", code: "LB", gmt: "(UTC+02:00)"},
{name: "Libya", code: "LY", gmt: "(UTC+02:00)"},
{name: "Liechtenstein", code: "LI", gmt: "(UTC+01:00)"},
{name: "Lithuania", code: "LT", gmt: "(UTC+02:00)"},
{name: "Luxembourg", code: "LU", gmt: "(UTC+01:00)"},
{name: "Macao SAR", code: "MO", gmt: "(UTC+08:00)"},
{name: "Macedonia, FYRO", code: "MK", gmt: "(UTC+01:00)"},
{name: "Malaysia", code: "MY", gmt: "(UTC+08:00)"},
{name: "Maldives", code: "MV", gmt: "(UTC+05:00)"},
{name: "Mali", code: "ML", gmt: "(UTC+00:00)"},
{name: "Malta", code: "MT", gmt: "(UTC+01:00)"},
{name: "Mexico", code: "MX", gmt: "(UTC-06:00)"},
{name: "Moldova", code: "MD", gmt: "(UTC+02:00)"},
{name: "Monaco", code: "MC", gmt: "(UTC+01:00)"},
{name: "Mongolia", code: "MN", gmt: "(UTC+08:00)"},
{name: "Montenegro", code: "ME", gmt: "(UTC+01:00)"},
{name: "Morocco", code: "MA", gmt: "(UTC+00:00)"},
{name: "Myanmar", code: "MM", gmt: "(UTC+06:30)"},
{name: "Nepal", code: "NP", gmt: "(UTC+05:45)"},
{name: "Netherlands", code: "NL", gmt: "(UTC+01:00)"},
{name: "New Zealand", code: "NZ", gmt: "(UTC+12:00)"},
{name: "Nicaragua", code: "NI", gmt: "(UTC-06:00)"},
{name: "Nigeria", code: "NG", gmt: "(UTC+01:00)"},
{name: "Norway", code: "NO", gmt: "(UTC+01:00)"},
{name: "Oman", code: "OM", gmt: "(UTC+04:00)"},
{name: "Pakistan", code: "PK", gmt: "(UTC+05:00)"},
{name: "Panama", code: "PA", gmt: "(UTC-05:00)"},
{name: "Paraguay", code: "PY", gmt: "(UTC-04:00)"},
{name: "Peru", code: "PE", gmt: "(UTC-05:00)"},
{name: "Philippines", code: "PH", gmt: "(UTC+08:00)"},
{name: "Poland", code: "PL", gmt: "(UTC+01:00)"},
{name: "Portugal", code: "PT", gmt: "(UTC+00:00)"},
{name: "Puerto Rico", code: "PR", gmt: "(UTC-04:00)"},
{name: "Qatar", code: "QA", gmt: "(UTC+03:00)"},
{name: "Réunion", code: "RE", gmt: "(UTC+04:00)"},
{name: "Romania", code: "RO", gmt: "(UTC+02:00)"},
{name: "Russia", code: "RU", gmt: "(UTC+02:00)"},
{name: "Rwanda", code: "RW", gmt: "(UTC+02:00)"},
{name: "Saudi Arabia", code: "SA", gmt: "(UTC+03:00)"},
{name: "Senegal", code: "SN", gmt: "(UTC+00:00)"},
{name: "Serbia", code: "RS", gmt: "(UTC+01:00)"},
{name: "Singapore", code: "SG", gmt: "(UTC+08:00)"},
{name: "Slovakia", code: "SK", gmt: "(UTC+01:00)"},
{name: "Slovenia", code: "SI", gmt: "(UTC+01:00)"},
{name: "Somalia", code: "SO", gmt: "(UTC+03:00)"},
{name: "South Africa", code: "ZA", gmt: "(UTC+02:00)"},
{name: "Spain", code: "ES", gmt: "(UTC+01:00)"},
{name: "Sri Lanka", code: "LK", gmt: "(UTC+05:30)"},
{name: "Sweden", code: "SE", gmt: "(UTC+01:00)"},
{name: "Switzerland", code: "CH", gmt: "(UTC+01:00)"},
{name: "Syria", code: "SY", gmt: "(UTC+02:00)"},
{name: "Taiwan", code: "TW", gmt: "(UTC+08:00)"},
{name: "Tajikistan", code: "TJ", gmt: "(UTC+05:00)"},
{name: "Thailand", code: "TH", gmt: "(UTC+07:00)"},
{name: "Trinidad and Tobago", code: "TT", gmt: "(UTC-04:00)"},
{name: "Tunisia", code: "TN", gmt: "(UTC+01:00)"},
{name: "Turkey", code: "TR", gmt: "(UTC+02:00)"},
{name: "Turkmenistan", code: "TM", gmt: "(UTC+05:00)"},
{name: "Ukraine", code: "UA", gmt: "(UTC+02:00)"},
{name: "United Arab Emirates", code: "AE", gmt: "(UTC+04:00)"},
{name: "United Kingdom", code: "GB", gmt: "(UTC+00:00)"},
{name: "United States", code: "US", gmt: "(UTC-05:00)"},
{name: "Uruguay", code: "UY", gmt: "(UTC-03:00)"},
{name: "Uzbekistan", code: "UZ", gmt: "(UTC+05:00)"},
{name: "Venezuela", code: "VE", gmt: "(UTC-04:00)"},
{name: "Vietnam", code: "VN", gmt: "(UTC+07:00)"},
{name: "Yemen", code: "YE", gmt: "(UTC+03:00)"},
{name: "Zimbabwe", code: "ZW", gmt: "(UTC+02:00)"}
]

[
{name: "Afghanistan", code: "AF", gmt: "+04:30"},
{name: "Albania", code: "AL", gmt: "+01:00"},
{name: "Algeria", code: "DZ", gmt: "+01:00"},
{name: "Argentina", code: "AR", gmt: "-03:00"},
{name: "Armenia", code: "AM", gmt: "+04:00"},
{name: "Australia", code: "AU", gmt: "+11:00"},
{name: "Austria", code: "AT", gmt: "+01:00"},
{name: "Azerbaijan", code: "AZ", gmt: "+04:00"},
{name: "Bahrain", code: "BH", gmt: "+03:00"},
{name: "Bangladesh", code: "BD", gmt: "+06:00"},
{name: "Belarus", code: "BY", gmt: "+03:00"},
{name: "Belgium", code: "BE", gmt: "+01:00"},
{name: "Belize", code: "BZ", gmt: "-06:00"},
{name: "Bhutan", code: "BT", gmt: "+06:00"},
{name: "Bolivia", code: "BO", gmt: "-04:00"},
{name: "Bosnia and Herzegovina", code: "BA", gmt: "+01:00"},
{name: "Botswana", code: "BW", gmt: "+02:00"},
{name: "Brazil", code: "BR", gmt: "-02:00"},
{name: "Brunei", code: "BN", gmt: "+08:00"},
{name: "Bulgaria", code: "BG", gmt: "+02:00"},
{name: "Cambodia", code: "KH", gmt: "+07:00"},
{name: "Cameroon", code: "CM", gmt: "+01:00"},
{name: "Canada", code: "CA", gmt: "-03:30"},
{name: "Chile", code: "CL", gmt: "-04:00"},
{name: "China", code: "CN", gmt: "+08:00"},
{name: "Colombia", code: "CO", gmt: "-05:00"},
{name: "Congo (DRC)", code: "CD", gmt: "+01:00"},
{name: "Costa Rica", code: "CR", gmt: "-06:00"},
{name: "Côte d’Ivoire", code: "CI", gmt: "+00:00"},
{name: "Croatia", code: "HR", gmt: "+01:00"},
{name: "Cuba", code: "CU", gmt: "-05:00"},
{name: "Czech Republic", code: "CZ", gmt: "+01:00"},
{name: "Denmark", code: "DK", gmt: "+01:00"},
{name: "Djibouti", code: "DJ", gmt: "+03:00"},
{name: "Dominican Republic", code: "DO", gmt: "-04:00"},
{name: "Ecuador", code: "EC", gmt: "-05:00"},
{name: "Egypt", code: "EG", gmt: "+02:00"},
{name: "El Salvador", code: "SV", gmt: "-06:00"},
{name: "Eritrea", code: "ER", gmt: "+03:00"},
{name: "Estonia", code: "EE", gmt: "+02:00"},
{name: "Ethiopia", code: "ET", gmt: "+03:00"},
{name: "Faroe Islands", code: "FO", gmt: "+00:00"},
{name: "Finland", code: "FI", gmt: "+02:00"},
{name: "France", code: "FR", gmt: "+01:00"},
{name: "Georgia", code: "GE", gmt: "+04:00"},
{name: "Germany", code: "DE", gmt: "+01:00"},
{name: "Greece", code: "GR", gmt: "+02:00"},
{name: "Greenland", code: "GL", gmt: "-03:00"},
{name: "Guatemala", code: "GT", gmt: "-06:00"},
{name: "Haiti", code: "HT", gmt: "-05:00"},
{name: "Honduras", code: "HN", gmt: "-06:00"},
{name: "Hong Kong SAR", code: "HK", gmt: "+08:00"},
{name: "Hungary", code: "HU", gmt: "+01:00"},
{name: "Iceland", code: "IS", gmt: "+00:00"},
{name: "India", code: "IN", gmt: "+05:30"},
{name: "Indonesia", code: "ID", gmt: "+07:00"},
{name: "Iran", code: "IR", gmt: "+03:30"},
{name: "Iraq", code: "IQ", gmt: "+03:00"},
{name: "Ireland", code: "IE", gmt: "+00:00"},
{name: "Israel", code: "IL", gmt: "+02:00"},
{name: "Italy", code: "IT", gmt: "+01:00"},
{name: "Jamaica", code: "JM", gmt: "-05:00"},
{name: "Japan", code: "JP", gmt: "+09:00"},
{name: "Jordan", code: "JO", gmt: "+02:00"},
{name: "Kazakhstan", code: "KZ", gmt: "+06:00"},
{name: "Kenya", code: "KE", gmt: "+03:00"},
{name: "Korea", code: "KR", gmt: "+09:00"},
{name: "Kuwait", code: "KW", gmt: "+03:00"},
{name: "Kyrgyzstan", code: "KG", gmt: "+06:00"},
{name: "Laos", code: "LA", gmt: "+07:00"},
{name: "Latvia", code: "LV", gmt: "+02:00"},
{name: "Lebanon", code: "LB", gmt: "+02:00"},
{name: "Libya", code: "LY", gmt: "+02:00"},
{name: "Liechtenstein", code: "LI", gmt: "+01:00"},
{name: "Lithuania", code: "LT", gmt: "+02:00"},
{name: "Luxembourg", code: "LU", gmt: "+01:00"},
{name: "Macao SAR", code: "MO", gmt: "+08:00"},
{name: "Macedonia, FYRO", code: "MK", gmt: "+01:00"},
{name: "Malaysia", code: "MY", gmt: "+08:00"},
{name: "Maldives", code: "MV", gmt: "+05:00"},
{name: "Mali", code: "ML", gmt: "+00:00"},
{name: "Malta", code: "MT", gmt: "+01:00"},
{name: "Mexico", code: "MX", gmt: "-06:00"},
{name: "Moldova", code: "MD", gmt: "+02:00"},
{name: "Monaco", code: "MC", gmt: "+01:00"},
{name: "Mongolia", code: "MN", gmt: "+08:00"},
{name: "Montenegro", code: "ME", gmt: "+01:00"},
{name: "Morocco", code: "MA", gmt: "+00:00"},
{name: "Myanmar", code: "MM", gmt: "+06:30"},
{name: "Nepal", code: "NP", gmt: "+05:45"},
{name: "Netherlands", code: "NL", gmt: "+01:00"},
{name: "New Zealand", code: "NZ", gmt: "+12:00"},
{name: "Nicaragua", code: "NI", gmt: "-06:00"},
{name: "Nigeria", code: "NG", gmt: "+01:00"},
{name: "Norway", code: "NO", gmt: "+01:00"},
{name: "Oman", code: "OM", gmt: "+04:00"},
{name: "Pakistan", code: "PK", gmt: "+05:00"},
{name: "Panama", code: "PA", gmt: "-05:00"},
{name: "Paraguay", code: "PY", gmt: "-04:00"},
{name: "Peru", code: "PE", gmt: "-05:00"},
{name: "Philippines", code: "PH", gmt: "+08:00"},
{name: "Poland", code: "PL", gmt: "+01:00"},
{name: "Portugal", code: "PT", gmt: "+00:00"},
{name: "Puerto Rico", code: "PR", gmt: "-04:00"},
{name: "Qatar", code: "QA", gmt: "+03:00"},
{name: "Réunion", code: "RE", gmt: "+04:00"},
{name: "Romania", code: "RO", gmt: "+02:00"},
{name: "Russia", code: "RU", gmt: "+02:00"},
{name: "Rwanda", code: "RW", gmt: "+02:00"},
{name: "Saudi Arabia", code: "SA", gmt: "+03:00"},
{name: "Senegal", code: "SN", gmt: "+00:00"},
{name: "Serbia", code: "RS", gmt: "+01:00"},
{name: "Singapore", code: "SG", gmt: "+08:00"},
{name: "Slovakia", code: "SK", gmt: "+01:00"},
{name: "Slovenia", code: "SI", gmt: "+01:00"},
{name: "Somalia", code: "SO", gmt: "+03:00"},
{name: "South Africa", code: "ZA", gmt: "+02:00"},
{name: "Spain", code: "ES", gmt: "+01:00"},
{name: "Sri Lanka", code: "LK", gmt: "+05:30"},
{name: "Sweden", code: "SE", gmt: "+01:00"},
{name: "Switzerland", code: "CH", gmt: "+01:00"},
{name: "Syria", code: "SY", gmt: "+02:00"},
{name: "Taiwan", code: "TW", gmt: "+08:00"},
{name: "Tajikistan", code: "TJ", gmt: "+05:00"},
{name: "Thailand", code: "TH", gmt: "+07:00"},
{name: "Trinidad and Tobago", code: "TT", gmt: "-04:00"},
{name: "Tunisia", code: "TN", gmt: "+01:00"},
{name: "Turkey", code: "TR", gmt: "+02:00"},
{name: "Turkmenistan", code: "TM", gmt: "+05:00"},
{name: "Ukraine", code: "UA", gmt: "+02:00"},
{name: "United Arab Emirates", code: "AE", gmt: "+04:00"},
{name: "United Kingdom", code: "GB", gmt: "+00:00"},
{name: "United States", code: "US", gmt: "-05:00"},
{name: "Uruguay", code: "UY", gmt: "-03:00"},
{name: "Uzbekistan", code: "UZ", gmt: "+05:00"},
{name: "Venezuela", code: "VE", gmt: "-04:00"},
{name: "Vietnam", code: "VN", gmt: "+07:00"},
{name: "Yemen", code: "YE", gmt: "+03:00"},
{name: "Zimbabwe", code: "ZW", gmt: "+02:00"}
]

1
能否解释一下这两者之间的区别以及它们的预期使用方式? - Ryan M
这些看起来一样。 - mrp

0

0

1
不幸的是,这里没有直接将国家映射到时区的方法!仍然需要知道城市名称。 - Tilo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接