Lista de IDs de fuso horário para uso com FindTimeZoneById () em C #?
254
Alguém pode me indicar uma lista completa de todos os fusos horários mencionados pelo ID esperado TimeZoneInfo.FindTimeZoneById()? Não consigo encontrar uma lista em nenhum lugar e procurei na documentação do .NET.
Se você perceber nas respostas abaixo que existem vários IDs de fuso horário duplicados, você deve ler aqui para saber mais: stackoverflow.com/a/15448800/37055
Chris Marisic
7
IMPORTANTE - Esses dados não são estáticos. Novos fusos horários são introduzidos no Windows à medida que os governos do mundo fazem alterações. Por esse motivo, não há páginas autorizadas listando-as nos documentos. Não confie em nenhuma lista codificada, mas ligue para TimeZoneInfo.FindTimeZoneById()si mesmo ou use-a TZUTIL.EXE /Lpara listá-las. As respostas abaixo são apenas um instantâneo dos dados no momento em que foram relatados. NÃO COPIE AQUI PARA HODCODE EM SEU APLICATIVO!
Matt Johnson-Pint
1
Se necessário, você pode ler o registro em HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zonesou usar a EnumDynamicTimeZoneInformationAPI do Windows.
Matt Johnson-Pint
Respostas:
358
Aqui está uma lista completa de um programa e seus resultados .
O código:
using System;
namespace TimeZoneIds{classProgram{staticvoidMain(string[] args){foreach(TimeZoneInfo z inTimeZoneInfo.GetSystemTimeZones())Console.WriteLine(z.Id);}}}
O TimeZoneId resulta na minha estação de trabalho Windows 7:
A saída desta lista é sensível ao fato de você estar no horário de verão ou não? Caso contrário, os nomes parecerão imprecisos. A Hora Padrão do Leste é GMT-5, mas GMT-4 na maior parte do ano.
JohnOpincar
4
Sim, o método TimeZoneInfo.FindSystemTimeZoneById é sensível ao horário de verão ... Consulte msdn.microsoft.com/en-US/library/… . Ele declara: "Este objeto TimeZoneInfo é usado para converter a hora local para a hora em Tóquio e determinar se é a Hora Padrão de Tóquio ou a Hora de Verão de Tóquio."
Sebastian
25
@ JohnOpincar - Você está correto. Os nomes dos IDs são enganosos. "Eastern Standard Time" representa tanto EST e EDT.
Matt Johnson-Pint
6
@ Sebastian- só para evitar confusão, acho que sua primeira frase deve ser: "Não, a saída do programa NÃO é sensível ao horário de verão". Independentemente da época do ano em que você executa o programa, a lista será a mesma, que é o que JohnOpincar estava perguntando.
TTT 28/05
6
Cuidado: os nomes de fuso horário são sensíveis ao sistema operacional. O Windows Server 2008 e o Windows Server 2012 têm listas diferentes.
Ross Presser
92
E se você quiser um HTML, selecione com os fusos horários do Windows em:
<select><option value="Morocco Standard Time">(GMT)Casablanca</option><option value="GMT Standard Time">(GMT)GreenwichMeanTime:Dublin,Edinburgh,Lisbon,London</option><option value="Greenwich Standard Time">(GMT)Monrovia,Reykjavik</option><option value="W. Europe Standard Time">(GMT+01:00)Amsterdam,Berlin,Bern,Rome,Stockholm,Vienna</option><option value="Central Europe Standard Time">(GMT+01:00)Belgrade,Bratislava,Budapest,Ljubljana,Prague</option><option value="Romance Standard Time">(GMT+01:00)Brussels,Copenhagen,Madrid,Paris</option><option value="Central European Standard Time">(GMT+01:00)Sarajevo,Skopje,Warsaw,Zagreb</option><option value="W. Central Africa Standard Time">(GMT+01:00)WestCentralAfrica</option><option value="Jordan Standard Time">(GMT+02:00)Amman</option><option value="GTB Standard Time">(GMT+02:00)Athens,Bucharest,Istanbul</option><option value="Middle East Standard Time">(GMT+02:00)Beirut</option><option value="Egypt Standard Time">(GMT+02:00)Cairo</option><option value="South Africa Standard Time">(GMT+02:00)Harare,Pretoria</option><option value="FLE Standard Time">(GMT+02:00)Helsinki,Kyiv,Riga,Sofia,Tallinn,Vilnius</option><option value="Israel Standard Time">(GMT+02:00)Jerusalem</option><option value="E. Europe Standard Time">(GMT+02:00)Minsk</option><option value="Namibia Standard Time">(GMT+02:00)Windhoek</option><option value="Arabic Standard Time">(GMT+03:00)Baghdad</option><option value="Arab Standard Time">(GMT+03:00)Kuwait,Riyadh</option><option value="Russian Standard Time">(GMT+03:00)Moscow,St.Petersburg,Volgograd</option><option value="E. Africa Standard Time">(GMT+03:00)Nairobi</option><option value="Georgian Standard Time">(GMT+03:00)Tbilisi</option><option value="Iran Standard Time">(GMT+03:30)Tehran</option><option value="Arabian Standard Time">(GMT+04:00)AbuDhabi,Muscat</option><option value="Azerbaijan Standard Time">(GMT+04:00)Baku</option><option value="Mauritius Standard Time">(GMT+04:00)PortLouis</option><option value="Caucasus Standard Time">(GMT+04:00)Yerevan</option><option value="Afghanistan Standard Time">(GMT+04:30)Kabul</option><option value="Ekaterinburg Standard Time">(GMT+05:00)Ekaterinburg</option><option value="Pakistan Standard Time">(GMT+05:00)Islamabad,Karachi</option><option value="West Asia Standard Time">(GMT+05:00)Tashkent</option><option value="India Standard Time">(GMT+05:30)Chennai,Kolkata,Mumbai,NewDelhi</option><option value="Sri Lanka Standard Time">(GMT+05:30)SriJayawardenepura</option><option value="Nepal Standard Time">(GMT+05:45)Kathmandu</option><option value="N. Central Asia Standard Time">(GMT+06:00)Almaty,Novosibirsk</option><option value="Central Asia Standard Time">(GMT+06:00)Astana,Dhaka</option><option value="Myanmar Standard Time">(GMT+06:30)Yangon(Rangoon)</option><option value="SE Asia Standard Time">(GMT+07:00)Bangkok,Hanoi,Jakarta</option><option value="North Asia Standard Time">(GMT+07:00)Krasnoyarsk</option><option value="China Standard Time">(GMT+08:00)Beijing,Chongqing,HongKong,Urumqi</option><option value="North Asia East Standard Time">(GMT+08:00)Irkutsk,UlaanBataar</option><option value="Singapore Standard Time">(GMT+08:00)KualaLumpur,Singapore</option><option value="W. Australia Standard Time">(GMT+08:00)Perth</option><option value="Taipei Standard Time">(GMT+08:00)Taipei</option><option value="Tokyo Standard Time">(GMT+09:00)Osaka,Sapporo,Tokyo</option><option value="Korea Standard Time">(GMT+09:00)Seoul</option><option value="Yakutsk Standard Time">(GMT+09:00)Yakutsk</option><option value="Cen. Australia Standard Time">(GMT+09:30)Adelaide</option><option value="AUS Central Standard Time">(GMT+09:30)Darwin</option><option value="E. Australia Standard Time">(GMT+10:00)Brisbane</option><option value="AUS Eastern Standard Time">(GMT+10:00)Canberra,Melbourne,Sydney</option><option value="West Pacific Standard Time">(GMT+10:00)Guam,PortMoresby</option><option value="Tasmania Standard Time">(GMT+10:00)Hobart</option><option value="Vladivostok Standard Time">(GMT+10:00)Vladivostok</option><option value="Central Pacific Standard Time">(GMT+11:00)Magadan,SolomonIs.,NewCaledonia</option><option value="New Zealand Standard Time">(GMT+12:00)Auckland,Wellington</option><option value="Fiji Standard Time">(GMT+12:00)Fiji,Kamchatka,MarshallIs.</option><option value="Tonga Standard Time">(GMT+13:00)Nuku'alofa</option><option value="Azores Standard Time">(GMT-01:00)Azores</option><option value="Cape Verde Standard Time">(GMT-01:00)CapeVerdeIs.</option><option value="Mid-Atlantic Standard Time">(GMT-02:00)Mid-Atlantic</option><option value="E. South America Standard Time">(GMT-03:00)Brasilia</option><option value="Argentina Standard Time">(GMT-03:00)BuenosAires</option><option value="SA Eastern Standard Time">(GMT-03:00)Georgetown</option><option value="Greenland Standard Time">(GMT-03:00)Greenland</option><option value="Montevideo Standard Time">(GMT-03:00)Montevideo</option><option value="Newfoundland Standard Time">(GMT-03:30)Newfoundland</option><option value="Atlantic Standard Time">(GMT-04:00)AtlanticTime(Canada)</option><option value="SA Western Standard Time">(GMT-04:00)LaPaz</option><option value="Central Brazilian Standard Time">(GMT-04:00)Manaus</option><option value="Pacific SA Standard Time">(GMT-04:00)Santiago</option><option value="Venezuela Standard Time">(GMT-04:30)Caracas</option><option value="SA Pacific Standard Time">(GMT-05:00)Bogota,Lima,Quito,RioBranco</option><option value="Eastern Standard Time">(GMT-05:00)EasternTime(US &Canada)</option><option value="US Eastern Standard Time">(GMT-05:00)Indiana(East)</option><option value="Central America Standard Time">(GMT-06:00)CentralAmerica</option><option value="Central Standard Time">(GMT-06:00)CentralTime(US &Canada)</option><option value="Central Standard Time (Mexico)">(GMT-06:00)Guadalajara,MexicoCity,Monterrey</option><option value="Canada Central Standard Time">(GMT-06:00)Saskatchewan</option><option value="US Mountain Standard Time">(GMT-07:00)Arizona</option><option value="Mountain Standard Time (Mexico)">(GMT-07:00)Chihuahua,LaPaz,Mazatlan</option><option value="Mountain Standard Time">(GMT-07:00)MountainTime(US &Canada)</option><option value="Pacific Standard Time">(GMT-08:00)PacificTime(US &Canada)</option><option value="Pacific Standard Time (Mexico)">(GMT-08:00)Tijuana,BajaCalifornia</option><option value="Alaskan Standard Time">(GMT-09:00)Alaska</option><option value="Hawaiian Standard Time">(GMT-10:00)Hawaii</option><option value="Samoa Standard Time">(GMT-11:00)MidwayIsland,Samoa</option><option value="Dateline Standard Time">(GMT-12:00)InternationalDateLineWest</option></select>
E se você quiser usá-lo no C # .NET MVC em uma exibição do Razor:
var timezones =newList<SelectListItem>{newSelectListItem(){Value="",Text="Select timezone...",Selected=false},newSelectListItem(){Value="Morocco Standard Time",Text="(GMT) Casablanca",Selected=false},newSelectListItem(){Value="GMT Standard Time",Text="(GMT) Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London",Selected=false},newSelectListItem(){Value="Greenwich Standard Time",Text="(GMT) Monrovia, Reykjavik",Selected=false},newSelectListItem(){Value="W. Europe Standard Time",Text="(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",Selected=false},newSelectListItem(){Value="Central Europe Standard Time",Text="(GMT+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",Selected=false},newSelectListItem(){Value="Romance Standard Time",Text="(GMT+01:00) Brussels, Copenhagen, Madrid, Paris",Selected=false},newSelectListItem(){Value="Central European Standard Time",Text="(GMT+01:00) Sarajevo, Skopje, Warsaw, Zagreb",Selected=false},newSelectListItem(){Value="W. Central Africa Standard Time",Text="(GMT+01:00) West Central Africa",Selected=false},newSelectListItem(){Value="Jordan Standard Time",Text="(GMT+02:00) Amman",Selected=false},newSelectListItem(){Value="GTB Standard Time",Text="(GMT+02:00) Athens, Bucharest, Istanbul",Selected=false},newSelectListItem(){Value="Middle East Standard Time",Text="(GMT+02:00) Beirut",Selected=false},newSelectListItem(){Value="Egypt Standard Time",Text="(GMT+02:00) Cairo",Selected=false},newSelectListItem(){Value="South Africa Standard Time",Text="(GMT+02:00) Harare, Pretoria",Selected=false},newSelectListItem(){Value="FLE Standard Time",Text="(GMT+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",Selected=false},newSelectListItem(){Value="Israel Standard Time",Text="(GMT+02:00) Jerusalem",Selected=false},newSelectListItem(){Value="E. Europe Standard Time",Text="(GMT+02:00) Minsk",Selected=false},newSelectListItem(){Value="Namibia Standard Time",Text="(GMT+02:00) Windhoek",Selected=false},newSelectListItem(){Value="Arabic Standard Time",Text="(GMT+03:00) Baghdad",Selected=false},newSelectListItem(){Value="Arab Standard Time",Text="(GMT+03:00) Kuwait, Riyadh",Selected=false},newSelectListItem(){Value="Russian Standard Time",Text="(GMT+03:00) Moscow, St. Petersburg, Volgograd",Selected=false},newSelectListItem(){Value="E. Africa Standard Time",Text="(GMT+03:00) Nairobi",Selected=false},newSelectListItem(){Value="Georgian Standard Time",Text="(GMT+03:00) Tbilisi",Selected=false},newSelectListItem(){Value="Iran Standard Time",Text="(GMT+03:30) Tehran",Selected=false},newSelectListItem(){Value="Arabian Standard Time",Text="(GMT+04:00) Abu Dhabi, Muscat",Selected=false},newSelectListItem(){Value="Azerbaijan Standard Time",Text="(GMT+04:00) Baku",Selected=false},newSelectListItem(){Value="Mauritius Standard Time",Text="(GMT+04:00) Port Louis",Selected=false},newSelectListItem(){Value="Caucasus Standard Time",Text="(GMT+04:00) Yerevan",Selected=false},newSelectListItem(){Value="Afghanistan Standard Time",Text="(GMT+04:30) Kabul",Selected=false},newSelectListItem(){Value="Ekaterinburg Standard Time",Text="(GMT+05:00) Ekaterinburg",Selected=false},newSelectListItem(){Value="Pakistan Standard Time",Text="(GMT+05:00) Islamabad, Karachi",Selected=false},newSelectListItem(){Value="West Asia Standard Time",Text="(GMT+05:00) Tashkent",Selected=false},newSelectListItem(){Value="India Standard Time",Text="(GMT+05:30) Chennai, Kolkata, Mumbai, New Delhi",Selected=false},newSelectListItem(){Value="Sri Lanka Standard Time",Text="(GMT+05:30) Sri Jayawardenepura",Selected=false},newSelectListItem(){Value="Nepal Standard Time",Text="(GMT+05:45) Kathmandu",Selected=false},newSelectListItem(){Value="N. Central Asia Standard Time",Text="(GMT+06:00) Almaty, Novosibirsk",Selected=false},newSelectListItem(){Value="Central Asia Standard Time",Text="(GMT+06:00) Astana, Dhaka",Selected=false},newSelectListItem(){Value="Myanmar Standard Time",Text="(GMT+06:30) Yangon (Rangoon)",Selected=false},newSelectListItem(){Value="SE Asia Standard Time",Text="(GMT+07:00) Bangkok, Hanoi, Jakarta",Selected=false},newSelectListItem(){Value="North Asia Standard Time",Text="(GMT+07:00) Krasnoyarsk",Selected=false},newSelectListItem(){Value="China Standard Time",Text="(GMT+08:00) Beijing, Chongqing, Hong Kong, Urumqi",Selected=false},newSelectListItem(){Value="North Asia East Standard Time",Text="(GMT+08:00) Irkutsk, Ulaan Bataar",Selected=false},newSelectListItem(){Value="Singapore Standard Time",Text="(GMT+08:00) Kuala Lumpur, Singapore",Selected=false},newSelectListItem(){Value="W. Australia Standard Time",Text="(GMT+08:00) Perth",Selected=false},newSelectListItem(){Value="Taipei Standard Time",Text="(GMT+08:00) Taipei",Selected=false},newSelectListItem(){Value="Tokyo Standard Time",Text="(GMT+09:00) Osaka, Sapporo, Tokyo",Selected=false},newSelectListItem(){Value="Korea Standard Time",Text="(GMT+09:00) Seoul",Selected=false},newSelectListItem(){Value="Yakutsk Standard Time",Text="(GMT+09:00) Yakutsk",Selected=false},newSelectListItem(){Value="Cen. Australia Standard Time",Text="(GMT+09:30) Adelaide",Selected=false},newSelectListItem(){Value="AUS Central Standard Time",Text="(GMT+09:30) Darwin",Selected=false},newSelectListItem(){Value="E. Australia Standard Time",Text="(GMT+10:00) Brisbane",Selected=false},newSelectListItem(){Value="AUS Eastern Standard Time",Text="(GMT+10:00) Canberra, Melbourne, Sydney",Selected=false},newSelectListItem(){Value="West Pacific Standard Time",Text="(GMT+10:00) Guam, Port Moresby",Selected=false},newSelectListItem(){Value="Tasmania Standard Time",Text="(GMT+10:00) Hobart",Selected=false},newSelectListItem(){Value="Vladivostok Standard Time",Text="(GMT+10:00) Vladivostok",Selected=false},newSelectListItem(){Value="Central Pacific Standard Time",Text="(GMT+11:00) Magadan, Solomon Is., New Caledonia",Selected=false},newSelectListItem(){Value="New Zealand Standard Time",Text="(GMT+12:00) Auckland, Wellington",Selected=false},newSelectListItem(){Value="Fiji Standard Time",Text="(GMT+12:00) Fiji, Kamchatka, Marshall Is.",Selected=false},newSelectListItem(){Value="Tonga Standard Time",Text="(GMT+13:00) Nuku'alofa",Selected=false},newSelectListItem(){Value="Azores Standard Time",Text="(GMT-01:00) Azores",Selected=false},newSelectListItem(){Value="Cape Verde Standard Time",Text="(GMT-01:00) Cape Verde Is.",Selected=false},newSelectListItem(){Value="Mid-Atlantic Standard Time",Text="(GMT-02:00) Mid-Atlantic",Selected=false},newSelectListItem(){Value="E. South America Standard Time",Text="(GMT-03:00) Brasilia",Selected=false},newSelectListItem(){Value="Argentina Standard Time",Text="(GMT-03:00) Buenos Aires",Selected=false},newSelectListItem(){Value="SA Eastern Standard Time",Text="(GMT-03:00) Georgetown",Selected=false},newSelectListItem(){Value="Greenland Standard Time",Text="(GMT-03:00) Greenland",Selected=false},newSelectListItem(){Value="Montevideo Standard Time",Text="(GMT-03:00) Montevideo",Selected=false},newSelectListItem(){Value="Newfoundland Standard Time",Text="(GMT-03:30) Newfoundland",Selected=false},newSelectListItem(){Value="Atlantic Standard Time",Text="(GMT-04:00) Atlantic Time (Canada)",Selected=false},newSelectListItem(){Value="SA Western Standard Time",Text="(GMT-04:00) La Paz",Selected=false},newSelectListItem(){Value="Central Brazilian Standard Time",Text="(GMT-04:00) Manaus",Selected=false},newSelectListItem(){Value="Pacific SA Standard Time",Text="(GMT-04:00) Santiago",Selected=false},newSelectListItem(){Value="Venezuela Standard Time",Text="(GMT-04:30) Caracas",Selected=false},newSelectListItem(){Value="SA Pacific Standard Time",Text="(GMT-05:00) Bogota, Lima, Quito, Rio Branco",Selected=false},newSelectListItem(){Value="Eastern Standard Time",Text="(GMT-05:00) Eastern Time (US & Canada)",Selected=false},newSelectListItem(){Value="US Eastern Standard Time",Text="(GMT-05:00) Indiana (East)",Selected=false},newSelectListItem(){Value="Central America Standard Time",Text="(GMT-06:00) Central America",Selected=false},newSelectListItem(){Value="Central Standard Time",Text="(GMT-06:00) Central Time (US & Canada)",Selected=false},newSelectListItem(){Value="Central Standard Time (Mexico)",Text="(GMT-06:00) Guadalajara, Mexico City, Monterrey",Selected=false},newSelectListItem(){Value="Canada Central Standard Time",Text="(GMT-06:00) Saskatchewan",Selected=false},newSelectListItem(){Value="US Mountain Standard Time",Text="(GMT-07:00) Arizona",Selected=false},newSelectListItem(){Value="Mountain Standard Time (Mexico)",Text="(GMT-07:00) Chihuahua, La Paz, Mazatlan",Selected=false},newSelectListItem(){Value="Mountain Standard Time",Text="(GMT-07:00) Mountain Time (US & Canada)",Selected=false},newSelectListItem(){Value="Pacific Standard Time",Text="(GMT-08:00) Pacific Time (US & Canada)",Selected=false},newSelectListItem(){Value="Pacific Standard Time (Mexico)",Text="(GMT-08:00) Tijuana, Baja California",Selected=false},newSelectListItem(){Value="Alaskan Standard Time",Text="(GMT-09:00) Alaska",Selected=false},newSelectListItem(){Value="Hawaiian Standard Time",Text="(GMT-10:00) Hawaii",Selected=false},newSelectListItem(){Value="Samoa Standard Time",Text="(GMT-11:00) Midway Island, Samoa",Selected=false},newSelectListItem(){Value="Dateline Standard Time",Text="(GMT-12:00) International Date Line West",Selected=false}}
Embora para o Razor você possa, é claro, apenas gerar as opções percorrendo TimeZoneInfo.GetSystemTimeZones()
Você tem o código que gera esta lista? Gostaria de saber como você produz a seção GMT.
Jeson Martajaya
45
Por que codificar a lista se você pode obtê-la através de var allTimeZones = TimeZoneInfo.GetSystemTimeZones (); ???
HelloWorld 26/02
6
A codificação embutida da lista tem o potencial de deixar de fora valores perfeitamente válidos que são adicionados ao longo do tempo! Não é uma boa ideia.
ErikE
2
isso parece uma péssima idéia para codificar na visualização. propenso a erro humano e uma dor real para manter.
Sara
1
Ele (o código .NET) foi adicionado aqui para poder ser recortado e colado, minimizando o erro humano. Dito isto, a solução também sugere um loop pelo TimeZoneInfo.GetSystemTimeZones (). Não sabe com que frequência as definições dos fusos horários são alteradas (e se essas alterações são refletidas no .NET imediatamente); portanto, não tem certeza de quanto 'manutenção' seria realmente necessário.
ReadOnlyCollection<TimeZoneInfo> zones =TimeZoneInfo.GetSystemTimeZones();Console.WriteLine("The local system has the following {0} time zones", zones.Count);foreach(TimeZoneInfo zone in zones)Console.WriteLine(zone.Id);
Essa não é uma lista deles ... Não quero entrar e listá-los programaticamente sempre que quiser usá-los.
Thomas
1
@ user976921: Isso fornece uma lista deles conforme definido pela sua máquina local. Você pode até definir os personalizados, por isso não sei exatamente quanto mais abrangente uma lista você poderia desejar.
Marc
@ user976921: execute Marco código e copie da janela de saída para um arquivo de texto.
MusiGenesis 26/10/11
1
Isso me dará uma lista se eu criar um programa para produzi-los. O problema é que eu quero uma lista que eu possa referenciar rapidamente e não precisar acompanhar um programa apenas para mostrá-los sempre que eu quiser. Eu só quero um link de referência rápida para acessar a qualquer momento e ver a lista completa e abrangente.
Thomas
@ Marc +1 para linqpad ... Nunca ouvi falar disso antes, mas parece extremamente útil! Obrigado!
Paccc 6/12/12
8
Você encontrará uma lista completa de fusos horários GMToffsetsaqui e pode usar o valor da coluna "Nome do fuso horário" para encontrar o fuso horário por ID
por exemplo
TimeZoneInfo objTimeZoneInfo =TimeZoneInfo.FindTimeZoneById("Dateline Standard Time");
Você obterá a classe de informações de fuso horário que contém o fuso horário padrão da linha de dados usado para GMT-12: 00 .
Em vez disso, TimeZoneInfo.FindSystemTimeZoneById.
Stuart Hallows
Estranhamente, na página referida como 'aqui' ( msdn.microsoft.com/en-us/library/… ), a lista pode ou não estar completa, mas não está correta. Confira a entrada para o problema do Arizona (EUA). A entrada na página diz "Horário Padrão da Montanha dos EUA", mas esse valor causa uma TimeZoneNotFoundException se você a usar em FindTimeZoneById. Se você verificar a saída do programa acima, verá que o valor correto é "Horário Padrão da Montanha dos EUA" (sem períodos). Parece que os valores na página foram 'limpos' em algum momento e não são confiáveis.
Anne Gunn
8
E aqui está uma versão Json que converti da resposta do ProfNimrod ...
{
tZCode :"Morocco Standard Time",
tZDesc :"(GMT) Casablanca"},{
tZCode :"GMT Standard Time",
tZDesc :"(GMT) Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London"},{
tZCode :"Greenwich Standard Time",
tZDesc :"(GMT) Monrovia, Reykjavik"},{
tZCode :"W. Europe Standard Time",
tZDesc :"(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna"},{
tZCode :"Central Europe Standard Time",
tZDesc :"(GMT+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague"},{
tZCode :"Romance Standard Time",
tZDesc :"(GMT+01:00) Brussels, Copenhagen, Madrid, Paris"},{
tZCode :"Central European Standard Time",
tZDesc :"(GMT+01:00) Sarajevo, Skopje, Warsaw, Zagreb"},{
tZCode :"W. Central Africa Standard Time",
tZDesc :"(GMT+01:00) West Central Africa"},{
tZCode :"Jordan Standard Time",
tZDesc :"(GMT+02:00) Amman"},{
tZCode :"GTB Standard Time",
tZDesc :"(GMT+02:00) Athens, Bucharest, Istanbul"},{
tZCode :"Middle East Standard Time",
tZDesc :"(GMT+02:00) Beirut"},{
tZCode :"Egypt Standard Time",
tZDesc :"(GMT+02:00) Cairo"},{
tZCode :"South Africa Standard Time",
tZDesc :"(GMT+02:00) Harare, Pretoria"},{
tZCode :"FLE Standard Time",
tZDesc :"(GMT+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius"},{
tZCode :"Israel Standard Time",
tZDesc :"(GMT+02:00) Jerusalem"},{
tZCode :"E. Europe Standard Time",
tZDesc :"(GMT+02:00) Minsk"},{
tZCode :"Namibia Standard Time",
tZDesc :"(GMT+02:00) Windhoek"},{
tZCode :"Arabic Standard Time",
tZDesc :"(GMT+03:00) Baghdad"},{
tZCode :"Arab Standard Time",
tZDesc :"(GMT+03:00) Kuwait, Riyadh"},{
tZCode :"Russian Standard Time",
tZDesc :"(GMT+03:00) Moscow, St. Petersburg, Volgograd"},{
tZCode :"E. Africa Standard Time",
tZDesc :"(GMT+03:00) Nairobi"},{
tZCode :"Georgian Standard Time",
tZDesc :"(GMT+03:00) Tbilisi"},{
tZCode :"Iran Standard Time",
tZDesc :"(GMT+03:30) Tehran"},{
tZCode :"Arabian Standard Time",
tZDesc :"(GMT+04:00) Abu Dhabi, Muscat"},{
tZCode :"Azerbaijan Standard Time",
tZDesc :"(GMT+04:00) Baku"},{
tZCode :"Mauritius Standard Time",
tZDesc :"(GMT+04:00) Port Louis"},{
tZCode :"Caucasus Standard Time",
tZDesc :"(GMT+04:00) Yerevan"},{
tZCode :"Afghanistan Standard Time",
tZDesc :"(GMT+04:30) Kabul"},{
tZCode :"Ekaterinburg Standard Time",
tZDesc :"(GMT+05:00) Ekaterinburg"},{
tZCode :"Pakistan Standard Time",
tZDesc :"(GMT+05:00) Islamabad, Karachi"},{
tZCode :"West Asia Standard Time",
tZDesc :"(GMT+05:00) Tashkent"},{
tZCode :"India Standard Time",
tZDesc :"(GMT+05:30) Chennai, Kolkata, Mumbai, New Delhi"},{
tZCode :"Sri Lanka Standard Time",
tZDesc :"(GMT+05:30) Sri Jayawardenepura"},{
tZCode :"Nepal Standard Time",
tZDesc :"(GMT+05:45) Kathmandu"},{
tZCode :"N. Central Asia Standard Time",
tZDesc :"(GMT+06:00) Almaty, Novosibirsk"},{
tZCode :"Central Asia Standard Time",
tZDesc :"(GMT+06:00) Astana, Dhaka"},{
tZCode :"Myanmar Standard Time",
tZDesc :"(GMT+06:30) Yangon (Rangoon)"},{
tZCode :"SE Asia Standard Time",
tZDesc :"(GMT+07:00) Bangkok, Hanoi, Jakarta"},{
tZCode :"North Asia Standard Time",
tZDesc :"(GMT+07:00) Krasnoyarsk"},{
tZCode :"China Standard Time",
tZDesc :"(GMT+08:00) Beijing, Chongqing, Hong Kong, Urumqi"},{
tZCode :"North Asia East Standard Time",
tZDesc :"(GMT+08:00) Irkutsk, Ulaan Bataar"},{
tZCode :"Singapore Standard Time",
tZDesc :"(GMT+08:00) Kuala Lumpur, Singapore"},{
tZCode :"W. Australia Standard Time",
tZDesc :"(GMT+08:00) Perth"},{
tZCode :"Taipei Standard Time",
tZDesc :"(GMT+08:00) Taipei"},{
tZCode :"Tokyo Standard Time",
tZDesc :"(GMT+09:00) Osaka, Sapporo, Tokyo"},{
tZCode :"Korea Standard Time",
tZDesc :"(GMT+09:00) Seoul"},{
tZCode :"Yakutsk Standard Time",
tZDesc :"(GMT+09:00) Yakutsk"},{
tZCode :"Cen. Australia Standard Time",
tZDesc :"(GMT+09:30) Adelaide"},{
tZCode :"AUS Central Standard Time",
tZDesc :"(GMT+09:30) Darwin"},{
tZCode :"E. Australia Standard Time",
tZDesc :"(GMT+10:00) Brisbane"},{
tZCode :"AUS Eastern Standard Time",
tZDesc :"(GMT+10:00) Canberra, Melbourne, Sydney"},{
tZCode :"West Pacific Standard Time",
tZDesc :"(GMT+10:00) Guam, Port Moresby"},{
tZCode :"Tasmania Standard Time",
tZDesc :"(GMT+10:00) Hobart"},{
tZCode :"Vladivostok Standard Time",
tZDesc :"(GMT+10:00) Vladivostok"},{
tZCode :"Central Pacific Standard Time",
tZDesc :"(GMT+11:00) Magadan, Solomon Is., New Caledonia"},{
tZCode :"New Zealand Standard Time",
tZDesc :"(GMT+12:00) Auckland, Wellington"},{
tZCode :"Fiji Standard Time",
tZDesc :"(GMT+12:00) Fiji, Kamchatka, Marshall Is."},{
tZCode :"Tonga Standard Time",
tZDesc :"(GMT+13:00) Nuku'alofa"},{
tZCode :"Azores Standard Time",
tZDesc :"(GMT-01:00) Azores"},{
tZCode :"Cape Verde Standard Time",
tZDesc :"(GMT-01:00) Cape Verde Is."},{
tZCode :"Mid-Atlantic Standard Time",
tZDesc :"(GMT-02:00) Mid-Atlantic"},{
tZCode :"E. South America Standard Time",
tZDesc :"(GMT-03:00) Brasilia"},{
tZCode :"Argentina Standard Time",
tZDesc :"(GMT-03:00) Buenos Aires"},{
tZCode :"SA Eastern Standard Time",
tZDesc :"(GMT-03:00) Georgetown"},{
tZCode :"Greenland Standard Time",
tZDesc :"(GMT-03:00) Greenland"},{
tZCode :"Montevideo Standard Time",
tZDesc :"(GMT-03:00) Montevideo"},{
tZCode :"Newfoundland Standard Time",
tZDesc :"(GMT-03:30) Newfoundland"},{
tZCode :"Atlantic Standard Time",
tZDesc :"(GMT-04:00) Atlantic Time (Canada)"},{
tZCode :"SA Western Standard Time",
tZDesc :"(GMT-04:00) La Paz"},{
tZCode :"Central Brazilian Standard Time",
tZDesc :"(GMT-04:00) Manaus"},{
tZCode :"Pacific SA Standard Time",
tZDesc :"(GMT-04:00) Santiago"},{
tZCode :"Venezuela Standard Time",
tZDesc :"(GMT-04:30) Caracas"},{
tZCode :"SA Pacific Standard Time",
tZDesc :"(GMT-05:00) Bogota, Lima, Quito, Rio Branco"},{
tZCode :"Eastern Standard Time",
tZDesc :"(GMT-05:00) Eastern Time (US & Canada)"},{
tZCode :"US Eastern Standard Time",
tZDesc :"(GMT-05:00) Indiana (East)"},{
tZCode :"Central America Standard Time",
tZDesc :"(GMT-06:00) Central America"},{
tZCode :"Central Standard Time",
tZDesc :"(GMT-06:00) Central Time (US & Canada)"},{
tZCode :"Central Standard Time (Mexico)",
tZDesc :"(GMT-06:00) Guadalajara, Mexico City, Monterrey"},{
tZCode :"Canada Central Standard Time",
tZDesc :"(GMT-06:00) Saskatchewan"},{
tZCode :"US Mountain Standard Time",
tZDesc :"(GMT-07:00) Arizona"},{
tZCode :"Mountain Standard Time (Mexico)",
tZDesc :"(GMT-07:00) Chihuahua, La Paz, Mazatlan"},{
tZCode :"Mountain Standard Time",
tZDesc :"(GMT-07:00) Mountain Time (US & Canada)"},{
tZCode :"Pacific Standard Time",
tZDesc :"(GMT-08:00) Pacific Time (US & Canada)"},{
tZCode :"Pacific Standard Time (Mexico)",
tZDesc :"(GMT-08:00) Tijuana, Baja California"},{
tZCode :"Alaskan Standard Time",
tZDesc :"(GMT-09:00) Alaska"},{
tZCode :"Hawaiian Standard Time",
tZDesc :"(GMT-10:00) Hawaii"},{
tZCode :"Samoa Standard Time",
tZDesc :"(GMT-11:00) Midway Island, Samoa"},{
tZCode :"Dateline Standard Time",
tZDesc :"(GMT-12:00) International Date Line West"}
Apenas uma observação neste link, por qualquer motivo, eles parecem ter publicado os IDs dos fusos horários um pouco errados. Por exemplo, eles têm os EUA em vez de apenas os EUA
Big Luke
3
Há uma coluna com um índice numérico ... Alguém sabe se posso obter um fuso horário por esse índice de alguma forma, em vez de confiar no nome da string?
Mike Ruhlin
Você sabe para que esses IDs do 'Índice de fuso horário' são usados? Eles se aplicam apenas ao Windows XP e antes?
<formid="form1"runat="server"><divstyle="font-size:30px;padding:25px;text-align: center;">
Get Current Date And Time Of All TimeZones
</div><hr/><divstyle="font-size:18px;padding:25px;text-align: center;"><divclass="clsLeft">
Select TimeZone :-
</div><divclass="clsRight"><asp:DropDownListID="ddlTimeZone"runat="server"AutoPostBack="True"OnSelectedIndexChanged="ddlTimeZone_SelectedIndexChanged"Font-Size="18px"></asp:DropDownList></div><divclass="clearspace"></div><divclass="clsLeft">
Selected TimeZone :-
</div><divclass="clsRight"><asp:LabelID="lblTimeZone"runat="server"Text=""/></div><divclass="clearspace"></div><divclass="clsLeft">
Current Date And Time :-
</div><divclass="clsRight"><asp:LabelID="lblCurrentDateTime"runat="server"Text=""/></div></div><p>
</p><asp:ButtonID="Button1"runat="server"onclick="Button1_Click"Text="Button"/></form>
protectedvoidPage_Load(object sender,EventArgs e){if(!IsPostBack){BindTimeZone();GetSelectedTimeZone();}}protectedvoid ddlTimeZone_SelectedIndexChanged(object sender,EventArgs e){GetSelectedTimeZone();}/// <summary>/// Get all timezone from local system and bind it in dropdownlist/// </summary>privatevoidBindTimeZone(){foreach(TimeZoneInfo z inTimeZoneInfo.GetSystemTimeZones()){
ddlTimeZone.Items.Add(newListItem(z.DisplayName, z.Id));}}/// <summary>/// Get selected timezone and current date & time/// </summary>privatevoidGetSelectedTimeZone(){DateTimeOffset newTime =TimeZoneInfo.ConvertTime(DateTimeOffset.UtcNow,TimeZoneInfo.FindSystemTimeZoneById(ddlTimeZone.SelectedValue));//DateTimeOffset newTime2 = TimeZoneInfo.ConvertTime(DateTimeOffset.UtcNow, TimeZoneInfo.FindSystemTimeZoneById(ddlTimeZone.SelectedValue));
lblTimeZone.Text= ddlTimeZone.SelectedItem.Text;
lblCurrentDateTime.Text= newTime.ToString();string str;
str = lblCurrentDateTime.Text;string s=str.Substring(0,10);DateTime dt =newDateTime();
dt =Convert.ToDateTime(s);// Response.Write(dt.ToString());Response.Write(ddlTimeZone.SelectedValue);}
TimeZoneInfo.FindTimeZoneById()
si mesmo ou use-aTZUTIL.EXE /L
para listá-las. As respostas abaixo são apenas um instantâneo dos dados no momento em que foram relatados. NÃO COPIE AQUI PARA HODCODE EM SEU APLICATIVO!HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
ou usar aEnumDynamicTimeZoneInformation
API do Windows.Respostas:
Aqui está uma lista completa de um programa e seus resultados .
O código:
O TimeZoneId resulta na minha estação de trabalho Windows 7:
fonte
E se você quiser um HTML, selecione com os fusos horários do Windows em:
E se você quiser usá-lo no C # .NET MVC em uma exibição do Razor:
Embora para o Razor você possa, é claro, apenas gerar as opções percorrendo
TimeZoneInfo.GetSystemTimeZones()
fonte
Aqui está o link que você está procurando:
C # timeZoneID do sistema
fonte
Do MSDN
fonte
Marc
o código e copie da janela de saída para um arquivo de texto.Você encontrará uma lista completa de fusos horários
GMToffsets
aqui e pode usar o valor da coluna "Nome do fuso horário" para encontrar o fuso horário por IDpor exemplo
Você obterá a classe de informações de fuso horário que contém o fuso horário padrão da linha de dados usado para GMT-12: 00 .
fonte
E aqui está uma versão Json que converti da resposta do ProfNimrod ...
fonte
Eu sei que é uma pergunta antiga e antiga, mas a Microsoft parece ter fornecido isso através do MSDN agora.
http://msdn.microsoft.com/en-us/library/gg154758.aspx
fonte
Eu suspeito que é isso que a maioria das pessoas procura:
Valores do Índice de Fuso Horário da Microsoft
Espero que a MS mantenha-o atualizado mesmo após o XP.
fonte
Lista de identificadores de fuso horário, incluídos por padrão no Windows XP e Vista: Localizando os fusos horários definidos em um sistema local
fonte
Aqui está a lista de fuso horário (s) da microsoft
fonte
A descrição acima fornece uma lista de fusos horários, que inclui os IDs.
fonte
fonte
Este é o código totalmente testado e funcionando para mim. Você pode usá-lo apenas copie e cole na sua página aspx e cs.
Este é o meu blog, você pode baixar o código completo aqui. obrigado.
http://www.c-sharpcorner.com/blogs/display-all-the-timezone-information-in-dropdown-list-of-a-local-system-using-c-sharp-with-asp-net
fonte