development

TimeZoneInfo.FindSystemTimeZoneById (String)에 어떤 값을 전달해야합니까?

big-blog 2020. 10. 12. 07:48
반응형

TimeZoneInfo.FindSystemTimeZoneById (String)에 어떤 값을 전달해야합니까?


TimeZoneInfo.FindSystemTimeZoneById(String)방법 을 사용하고 싶지만 어떤 값을 입력으로 사용할지 모르겠습니까?

에 대한 id필수 값 목록은 어디에서 얻을 수 있습니까 FindSystemTimeZoneById?


다음은 Windows 8의 목록입니다 (Windows 레지스트리에서 추출).

아프가니스탄 표준시
알래스카 표준시
알래스카 표준시 \ 동적 DST
아랍 표준시
아라비아 표준시
아랍 표준시
아랍 표준시 \ 동적 DST
아르헨티나 표준시
아르헨티나 표준시 \ 동적 DST
대서양 표준시
대서양 표준시 \ 동적 DST
AUS 중부 표준시
AUS 동부 표준시
AUS 동부 표준시 \ 동적 DST
아제르바이잔 표준시
아 조레스 표준시
아 조레스 표준시 \ 동적 DST
바이아 표준시
바이아 표준시 \ 동적 DST
방글라데시 표준시
방글라데시 표준시 \ 동적 DST
캐나다 중부 표준시
카보 베르데 표준시
코카서스 표준시
코카서스 표준시 \ 동적 DST
Cen. 호주 표준시
Cen. 호주 표준시 \ 동적 DST
중앙 아메리카 표준시
중앙 아시아 표준시
브라질 중부 표준시
브라질 중부 표준시 \ 동적 DST
중부 유럽 표준시
중부 유럽 표준시
중부 태평양 표준시
중부 표준시
중부 표준시 \ 동적 DST
중부 표준시 (멕시코)
중국 표준시
날짜 표시 표준시
E. 아프리카 표준시
E. 호주 표준시
E. 유럽 표준시
E. 남미 표준시
E. 남미 표준시 \ 동적 DST
동부 표준시
동부 표준시 \ 동적 DST
이집트 표준시
이집트 표준시 \ 동적 DST
예 카테 린 부르크 표준시
예 카테 린 부르크 표준시 \ 동적 DST
피지 표준시
피지 표준시 \ 동적 DST
FLE 표준시
그루지야 표준시
GMT 표준시
그린란드 표준시
그린란드 표준시 \ 동적 DST
그리니치 표준시
GTB 표준시
하와이 표준시
인도 표준시
이란 표준시
이란 표준시 \ 동적 DST
이스라엘 표준시
이스라엘 표준시 \ 동적 DST
요르단 표준시
요르단 표준시 \ 동적 DST
칼리닌그라드 표준시
칼리닌그라드 표준시 \ 동적 DST
캄차카 표준시
한국 표준시
리비아 표준시
리비아 표준시 \ 동적 DST
마가 단 표준시
마가 단 표준시 \ 동적 DST
모리셔스 표준시
모리셔스 표준시 \ 동적 DST
중부 대서양 표준시
중동 표준시
중동 표준시 \ 동적 DST
몬테비데오 표준시
몬테비데오 표준시 \ 동적 DST
모로코 표준시
모로코 표준시 \ 동적 DST
산지 표준시
산지 표준시 \ 동적 DST
산지 표준시 (멕시코)
미얀마 표준시
북 중앙 아시아 표준시
북 중앙 아시아 표준시 \ 동적 DST
나미비아 표준시
나미비아 표준시 \ 동적 DST
네팔 표준시
뉴질랜드 표준시
뉴질랜드 표준시 \ 동적 DST
뉴 펀들 랜드 표준시
뉴 펀들 랜드 표준시 \ 동적 DST
북아시아 동부 표준시
북아시아 동부 표준시 \ 동적 DST
북아시아 표준시
북아시아 표준시 \ 동적 DST
태평양 SA 표준시
태평양 SA 표준시 \ 동적 DST
태평양 표준시
태평양 표준시 \ 동적 DST
태평양 표준시 (멕시코)
파키스탄 표준시
파키스탄 표준시 \ 동적 DST
파라과이 표준시
파라과이 표준시 \ 동적 DST
로맨스 표준시
러시아 표준시
러시아 표준시 \ 동적 DST
SA 동부 표준시
SA 태평양 표준시
SA 서부 표준시
사모아 표준시
사모아 표준시 \ 동적 DST
동남아시아 표준시
싱가포르 표준시
남아프리카 표준시
스리랑카 표준시
시리아 표준시
시리아 표준시 \ 동적 DST
타이베이 표준시
태즈 매니아 표준시
태즈 매니아 표준시 \ 동적 DST
도쿄 표준시
통가 표준시
터키 표준시
터키 표준시 \ 동적 DST
울란바토르 표준시
미국 동부 표준시
미국 동부 표준시 \ 동적 DST
미국 산지 표준시
UTC
UTC + 12
UTC-02
UTC-11
베네수엘라 표준시
베네수엘라 표준시 \ 동적 DST
블라디보스토크 표준시
블라디보스토크 표준시 \ 동적 DST
W. 호주 표준시
W. 호주 표준시 \ 동적 DST
W. 중앙 아프리카 표준시
W. 유럽 표준시
서아시아 표준시
서태평양 표준시
야쿠 츠크 표준시
야쿠 츠크 표준시 \ 동적 DST

TimeZoneInfo클래스 의 정적 목록에서 가져올 수 있습니다.

var infos = TimeZoneInfo.GetSystemTimeZones();
foreach (var info in infos)
{
    Console.WriteLine(info.Id);
}

예:

  var tzInfo = TimeZoneInfo.FindSystemTimeZoneById("New Zealand Standard Time");

또는 DJ KRAZE가 제안한 시간대 ID 목록을 원하신다면

  var timeZoneIds = TimeZoneInfo.GetSystemTimeZones().Select(t => t.Id);

사용 가능한 시간대는 다음과 같습니다.

Console.WriteLine(string.Join("\n",TimeZoneInfo.GetSystemTimeZones().Select(x=>x.Id)));

결과:

Dateline Standard Time
UTC-11
Aleutian Standard Time
Hawaiian Standard Time
Marquesas Standard Time
Alaskan Standard Time
UTC-09
Pacific Standard Time (Mexico)
UTC-08
Pacific Standard Time
US Mountain Standard Time
Mountain Standard Time (Mexico)
Mountain Standard Time
Central America Standard Time
Central Standard Time
Easter Island Standard Time
Central Standard Time (Mexico)
Canada Central Standard Time
SA Pacific Standard Time
Eastern Standard Time (Mexico)
Eastern Standard Time
Haiti Standard Time
Cuba Standard Time
US Eastern Standard Time
Paraguay Standard Time
Atlantic Standard Time
Venezuela Standard Time
Central Brazilian Standard Time
SA Western Standard Time
Pacific SA Standard Time
Turks And Caicos Standard Time
Newfoundland Standard Time
Tocantins Standard Time
E. South America Standard Time
SA Eastern Standard Time
Argentina Standard Time
Greenland Standard Time
Montevideo Standard Time
Saint Pierre Standard Time
Bahia Standard Time
UTC-02
Mid-Atlantic Standard Time
Azores Standard Time
Cape Verde Standard Time
UTC
Morocco Standard Time
GMT Standard Time
Greenwich Standard Time
W. Europe Standard Time
Central Europe Standard Time
Romance Standard Time
Central European Standard Time
W. Central Africa Standard Time
Namibia Standard Time
Jordan Standard Time
GTB Standard Time
Middle East Standard Time
Egypt Standard Time
E. Europe Standard Time
Syria Standard Time
West Bank Standard Time
South Africa Standard Time
FLE Standard Time
Israel Standard Time
Kaliningrad Standard Time
Libya Standard Time
Arabic Standard Time
Turkey Standard Time
Arab Standard Time
Belarus Standard Time
Russian Standard Time
E. Africa Standard Time
Iran Standard Time
Arabian Standard Time
Astrakhan Standard Time
Azerbaijan Standard Time
Russia Time Zone 3
Mauritius Standard Time
Georgian Standard Time
Caucasus Standard Time
Afghanistan Standard Time
West Asia Standard Time
Ekaterinburg Standard Time
Pakistan Standard Time
India Standard Time
Sri Lanka Standard Time
Nepal Standard Time
Central Asia Standard Time
Bangladesh Standard Time
Omsk Standard Time
Myanmar Standard Time
SE Asia Standard Time
Altai Standard Time
W. Mongolia Standard Time
North Asia Standard Time
N. Central Asia Standard Time
Tomsk Standard Time
China Standard Time
North Asia East Standard Time
Singapore Standard Time
W. Australia Standard Time
Taipei Standard Time
Ulaanbaatar Standard Time
North Korea Standard Time
Aus Central W. Standard Time
Transbaikal Standard Time
Tokyo Standard Time
Korea Standard Time
Yakutsk Standard Time
Cen. Australia Standard Time
AUS Central Standard Time
E. Australia Standard Time
AUS Eastern Standard Time
West Pacific Standard Time
Tasmania Standard Time
Vladivostok Standard Time
Lord Howe Standard Time
Bougainville Standard Time
Russia Time Zone 10
Magadan Standard Time
Norfolk Standard Time
Sakhalin Standard Time
Central Pacific Standard Time
Russia Time Zone 11
New Zealand Standard Time
UTC+12
Fiji Standard Time
Kamchatka Standard Time
Chatham Islands Standard Time
Tonga Standard Time
Samoa Standard Time
Line Islands Standard Time

TimeZoneInfo호출 된 TimeZoneInfo.GetSystemTimeZones()메서드 의 정적 메서드를 살펴보십시오 .

그러면 TimeZoneInfo레지스트리에서 운영 체제 의 모든 목록이 반환됩니다 . 모두 아래에 저장됩니다 : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones.

예를 들어 "Dublin, Edinburgh, Lisbon, London"시간대의 경우 "GMT Standard Time"이 있습니다.


전체 목록은 MSDN 웹 사이트에서 찾을 수 있습니다.

시간대 ID (Compact 2013)


Like others have said, you can find the list by iterating TimeZoneInfo.GetSystemTimeZones() to find the string you want to use. That said, if you only have information on the time difference (like GMT+9 or GMT-10 ) and cannot find your timezone after iterating the Timezones, you might want to see the following url to see which timezone do you need https://msdn.microsoft.com/en-US/library/ms912391(v=winembedded.11).aspx


Or you can pass the TimeZoneInfo.Local.Id like this:

TimeZoneInfo tzi = TimeZoneInfo.FindSystemTimeZoneById(TimeZoneInfo.Local.Id);
DateTime localDateTime = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, tzi);

The latest Microsoft documentation, with a list of these, can be found at https://support.microsoft.com/en-gb/help/973627/microsoft-time-zone-index-values

The time zone ID strings are currently as follows (if you want to see the actual time difference of see the hex index for each time zone ID then click the above link):

Samoa Standard Time

Alaskan Standard Time

Mountain Standard Time

U.S. Mountain Standard Time

Canada Central Standard Time

Central America Standard Time

U.S. Eastern Standard Time

Atlantic Standard Time

Pacific S.A. Standard Time

E. South America Standard Time

Greenland Standard Time

Azores Standard Time

GMT Standard Time

Central Europe Standard Time

Romance Standard Time

W. Central Africa Standard Time

Egypt Standard Time

GTB Standard Time

South Africa Standard Time

Arab Standard Time

Arabic Standard Time

Arabian Standard Time

Transitional Islamic State of Afghanistan Standard Time

West Asia Standard Time

Nepal Standard Time

Sri Lanka Standard Time

Myanmar Standard Time

North Asia Standard Time

Singapore Standard Time

W. Australia Standard Time

Korea Standard Time

Yakutsk Standard Time

Cen. Australia Standard Time

E. Australia Standard Time

Vladivostok Standard Time

Central Pacific Standard Time

New Zealand Standard Time

Azerbaijan Standard Time 

Jordan Standard Time

Mountain Standard Time (Mexico)

Namibia Standard Time

Central Brazilian Standard Time

Armenian Standard Time

Argentina Standard Time

Pakistan Standard Time

UTC

Kamchatka Standard Time


You can use that code below

using System;

namespace TimeZoneIds
{
    class Program
    {
        static void Main(string[] args)
        {
            foreach (TimeZoneInfo z in TimeZoneInfo.GetSystemTimeZones())
                Console.WriteLine(z.Id);
        }
    }
}

참고URL : https://stackoverflow.com/questions/14149346/what-value-should-i-pass-into-timezoneinfo-findsystemtimezonebyidstring

반응형