2009-03-05 4 views
4

누구든지 Windows에서 표준 시간대 이름에 대해 번역 된 컴파일 목록을 알고 있습니까? 독일어, 프랑스어 및 스페인어로 75 개 정도가 필요합니다. 또는 .Net을 사용하여 이러한 목록을 컴파일하는 방법은 무엇입니까?번역 된 표준 시간대 설명의 소스를 아는 사람이 있습니까?

예 형식 : (GMT + 01 : 00) 베오그라드, 브라 티 슬라바, 부다페스트, 류블 랴나, 프라하

답변

1

: 마이크로 소프트 \ 윈도우 NT를 \ CurrentVersion \ 시간대 \

HKEY_LOCAL_MACHINE \ 소프트웨어가 사용하여로드 할 수

:

ArrayList zones = new ArrayList(); 

using(RegistryKey key = Registry.LocalMachine.OpenSubKey(
    @"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones")) 
{ 
    string[] zoneNames = key.GetSubKeyNames(); 

    foreach(string zoneName in zoneNames) 
    { 
     using(RegistryKey subKey = key.OpenSubKey(zoneName)) 
     { 
      TimeZoneInformation tzi = new TimeZoneInformation(); 
      tzi.Name = zoneName; 
      tzi.DisplayName = (string)subKey.GetValue("Display"); 
      tzi.StandardName = (string)subKey.GetValue("Std"); 
      tzi.DaylightName = (string)subKey.GetValue("Dlt"); 
      object value = subKey.GetValue("Index"); 
      if(value != null) 
      { 
       tzi.Index = (int)value; 
      } 

      tzi.InitTzi((byte[])subKey.GetValue("Tzi")); 

      zones.Add(tzi); 
     } 
    } 
} 

여기서 TimeZoneInformation은 쉽게 액세스 할 수 있도록 정보를 저장하는 클래스입니다.

찾고있는 설명은 표시 값입니다.

+0

이 답변은 몇 가지 방법으로 잘못되었습니다. 첫째, OP는 번역 된 이름을 요구했습니다. 둘째, 표시된 코드 대신 TimeZoneInfo.GetSystemTimeZones()를 사용하면됩니다. –

5

https://iana.org/time-zones 또는 ftp://ftp.iana.org/tz (또는 웹에있는 많은 다른 소스)에서 시간대 데이터베이스를 가져옵니다. 이들은 UN ISO 코드와 영어 국가/도시 이름

그리고 http://www.unicode.org/cldr/

예에서 그들을 번역에 키가 될 것입니다

관련 문제