Windows 有人知道时区描述翻译的来源吗?
有人知道Windows中时区名称的编译列表吗?我需要75本左右的德语、法语和西班牙语。或者,我将如何使用.Net来编译这样一个列表Windows 有人知道时区描述翻译的来源吗?,windows,internationalization,timezone,Windows,Internationalization,Timezone,有人知道Windows中时区名称的编译列表吗?我需要75本左右的德语、法语和西班牙语。或者,我将如何使用.Net来编译这样一个列表 示例格式:(GMT+01:00)贝尔格莱德、布拉迪斯拉发、布达佩斯、卢布尔雅那、布拉格从或(或网络上的许多其他来源)获取时区数据库。这些将输入联合国ISO代码和英语国家/城市名称 然后把它们从 e、 g 法语的 西班牙文 注册表中的所有时区列表如下: HKEY\U本地\U机器\SOFTWARE\Microsoft\Windows NT\CurrentVersion
示例格式:(GMT+01:00)贝尔格莱德、布拉迪斯拉发、布达佩斯、卢布尔雅那、布拉格从或(或网络上的许多其他来源)获取时区数据库。这些将输入联合国ISO代码和英语国家/城市名称 然后把它们从 e、 g
- 法语的
- 西班牙文
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只是一个类,它存储信息以便于访问
您要查找的描述位于“显示”值中。Microsoft术语集适用于此。这个答案在几个方面似乎是错误的。首先,OP要求翻译姓名。其次,您可以简单地使用TimeZoneInfo.GetSystemTimeZones()而不是所示的代码。这应该是可以接受的答案。此外,我还有一个名为.NET的库,它使这些数据易于使用。