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


답변:


94

다음은 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
산지 표준시 (멕시코)
미얀마 표준시
N. 중앙 아시아 표준시
북 중앙 아시아 표준시 \ 동적 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

5
영국은 나타나지 않지만 (GMT / BST) 분명히 나타납니다 GMT Standard Time( stackoverflow.com/questions/4034923/… ).
SharpC

3
Dynamic DST가 무엇인지 궁금하신 분들을 위해 .... blogs.msdn.microsoft.com/bclteam/2007/06/07/…
Mick

아주 큰 도움! 나도 정확했다! ~, ~ 개인 정적 TimeZoneInfo 중 INDIA_ZONE = TimeZoneInfo.FindSystemTimeZoneById ( "인도 표준시") : 실제로 내 응용 프로그램에 대한 수집하기 위해 저를 도왔다
PatsonLeaner

2
위의 "AUS Eastern Standard Time"과 TimeZoneInfo.GetSystemTimeZones ()에서 반환 된 "E. Australia Standard Time"사이에는 차이가 있습니다. 전자는 DST를 고려하고 후자는 고려하지 않습니다. 참조 dotnetfiddle.net/k3yKN4
마틴 Capodici

1
.NET Core의 교차 플랫폼 세계에서 TimeZone ID는 코드가 실행되는 위치에 따라 다릅니다. 예 : Mac에서 시드니는 "Australia / Sydney"이고 Windows 10에서는 해당 시간대가 "E. Australia Standard Time"입니다.
Sudhanshu Mishra

39

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);

+1 var lstTimeZones = new List <string> (); 그런 다음 console.WriteLine (info.Id); lstTimeZones.Add (info.Id); 내부
MethodMan 2013-01-04

16

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

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

9

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

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

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


3

이러한 목록이 포함 된 최신 Microsoft 설명서는 https://support.microsoft.com/en-gb/help/973627/microsoft-time-zone-index-values 에서 찾을 수 있습니다.

시간대 ID 문자열은 현재 다음과 같습니다 (각 시간대 ID의 16 진수 인덱스를 보는 실제 시간 차이를 보려면 위 링크를 클릭하십시오).

사모아 표준시

알래스카 표준시

산지 표준시

미국 산지 표준시

캐나다 중부 표준시

중앙 아메리카 표준시

미국 동부 표준시

대서양 표준시

태평양 SA 표준시

E. 남미 표준시

그린란드 표준시

아 조레스 표준시

GMT 표준시

중부 유럽 표준시

로맨스 표준시

W. 중앙 아프리카 표준시

이집트 표준시

GTB 표준시

남아프리카 표준시

아랍 표준시

아랍 표준시

아라비아 표준시

아프가니스탄 표준시의 과도기 이슬람 국가

서아시아 표준시

네팔 표준시

스리랑카 표준시

미얀마 표준시

북아시아 표준시

싱가포르 표준시

W. 호주 표준시

한국 표준시

야쿠 츠크 표준시

Cen. 호주 표준시

E. 호주 표준시

블라디보스토크 표준시

중부 태평양 표준시

뉴질랜드 표준시

아제르바이잔 표준시 

요르단 표준시

산지 표준시 (멕시코)

나미비아 표준시

브라질 중부 표준시

아르메니아 표준시

아르헨티나 표준시

파키스탄 표준시

UTC

캄차카 표준시


3

최신 시간대 목록을 가져 오려면 Windows에서 tzutil을 사용하십시오.

tzutil / l

MSDN에서 Microsoft의 공식 표준 시간대 ID 목록을 찾을 수 있습니다. https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-time-zones

  ID      |   Time zone name
----------|------------------------
  0       |   Dateline Standard Time
  110     |   UTC-11
  200     |   Hawaiian Standard Time
  300     |   Alaskan Standard Time
  400     |   Pacific Standard Time
  410     |   Pacific Standard Time (Mexico)
  500     |   Mountain Standard Time
  510     |   Mountain Standard Time (Mexico)
  520     |   US Mountain Standard Time
  600     |   Canada Central Standard Time
  610     |   Central America Standard Time
  620     |   Central Standard Time
  630     |   Central Standard Time (Mexico)
  700     |   Eastern Standard Time
  710     |   SA Pacific Standard Time
  720     |   US Eastern Standard Time
  840     |   Venezuela Standard Time
  800     |   Atlantic Standard Time
  810     |   Central Brazilian Standard Time
  820     |   Pacific SA Standard Time
  830     |   SA Western Standard Time
  850     |   Paraguay Standard Time
  900     |   Newfoundland Standard Time
  910     |   E. South America Standard Time
  920     |   Greenland Standard Time
  930     |   Montevideo Standard Time
  940     |   SA Eastern Standard Time
  950     |   Argentina Standard Time
  1000    |   Mid-Atlantic Standard Time
  1010    |   UTC-2
  1100    |   Azores Standard Time
  1110    |   Cabo Verde Standard Time
  1200    |   GMT Standard Time
  1210    |   Greenwich Standard Time
  1220    |   Morocco Standard Time
  1230    |   UTC
  1300    |   Central Europe Standard Time
  1310    |   Central European Standard Time
  1320    |   Romance Standard Time
  1330    |   W. Central Africa Standard Time
  1340    |   W. Europe Standard Time
  1350    |   Namibia Standard Time
  1400    |   E. Europe Standard Time
  1410    |   Egypt Standard Time
  1420    |   FLE Standard Time
  1430    |   GTB Standard Time
  1440    |   Israel Standard Time
  1450    |   Jordan Standard Time
  1460    |   Middle East Standard Time
  1470    |   South Africa Standard Time
  1480    |   Syria Standard Time
  1490    |   Turkey Standard Time
  1500    |   Arab Standard Time
  1510    |   Arabic Standard Time
  1520    |   E. Africa Standard Time
  1530    |   Kaliningrad Standard Time
  1550    |   Iran Standard Time
  1540    |   Russian Standard Time
  1600    |   Arabian Standard Time
  1610    |   Azerbaijan Standard Time
  1620    |   Caucasus Standard Time
  1640    |   Georgian Standard Time
  1650    |   Mauritius Standard Time
  1630    |   Afghanistan Standard Time
  1710    |   West Asia Standard Time
  1750    |   Pakistan Standard Time
  1720    |   India Standard Time
  1730    |   Sri Lanka Standard Time
  1740    |   Nepal Standard Time
  1700    |   Ekaterinburg Standard Time
  1800    |   Central Asia Standard Time
  1830    |   Bangladesh Standard Time
  1820    |   Myanmar Standard Time
  1810    |   N. Central Asia Standard Time
  1910    |   SE Asia Standard Time
  1900    |   North Asia Standard Time
  2000    |   China Standard Time
  2020    |   Singapore Standard Time
  2030    |   Taipei Standard Time
  2040    |   W. Australia Standard Time
  2050    |   Ulaanbaatar Standard Time
  2010    |   North Asia East Standard Time
  2100    |   Korea Standard Time
  2110    |   Tokyo Standard Time
  2130    |   AUS Central Standard Time
  2140    |   Cen. Australia Standard Time
  2120    |   Yakutsk Standard Time
  2200    |   AUS Eastern Standard Time
  2210    |   E. Australia Standard Time
  2220    |   Tasmania Standard Time
  2240    |   West Pacific Standard Time
  2230    |   Vladivostok Standard Time
  2300    |   Central Pacific Standard Time
  2310    |   Magadan Standard Time
  2400    |   Fiji Standard Time
  2410    |   New Zealand Standard Time
  2430    |   UTC+12
  2500    |   Tonga Standard Time
  2510    |   Samoa Standard Time

2

다른 사람들이 말했듯이, TimeZoneInfo.GetSystemTimeZones()사용할 문자열을 찾기 위해 반복하여 목록 을 찾을 수 있습니다. 즉, 시차에 대한 정보 (예 : GMT + 9 또는 GMT-10) 만 있고 시간대를 반복 한 후 시간대를 찾을 수없는 경우 다음 URL을보고 https : / 가 필요한 시간대를 확인할 수 있습니다 . /msdn.microsoft.com/en-US/library/ms912391(v=winembedded.11).aspx


1

또는 다음 TimeZoneInfo.Local.Id과 같이 전달할 수 있습니다 .

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

1

아래 코드를 사용할 수 있습니다.

using System;

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

0

한 시간대에서 다른 시간대로 전환하는 방법 :

DateTime n = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(datetime, "sourceTimeZoneId", "destinationTimeZoneId");

나는 Win10에 있으며 다음과 같이 나열 Time Zone Id합니다 time difference.

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

시차를 얻는 코드 :

DateTime dt = Convert.ToDateTime("2020-04-17T09:00:00");
Dictionary<string, int> zoneHour = new Dictionary<string, int>();
var infos = TimeZoneInfo.GetSystemTimeZones();
foreach (var info in infos)
{
    zoneHour.Add(info.Id,
        TimeZoneInfo.ConvertTimeBySystemTimeZoneId(dt, "UTC", info.Id).Subtract(dt).Hours
    );
}

var zoneHourOrder = zoneHour.OrderBy(z => z.Value);
foreach (var kv in zoneHourOrder)
{
    Console.WriteLine(kv.Key.PadRight(40) + (kv.Value > 0 ? "+" + kv.Value : kv.Value.ToString()));
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.