2009-05-22 142 views
17

可能重复:
Where can I get a list of all countries/cities to populate a listbox?任何语言的所有国家的列表?

我有一个有点左右为难,我需要在德国的所有国家名称的列表。我可以使用以下代码获取英语信息,但我不确定如何为德语做这件事。有任何想法吗?

Dim countries As Generic.List(Of String) = New Generic.List(Of String) 
    For Each ci As Globalization.CultureInfo In Globalization.CultureInfo.GetCultures(Globalization.CultureTypes.AllCultures And Globalization.CultureTypes.NeutralCultures) 
     Dim ri As Globalization.RegionInfo = New Globalization.RegionInfo(ci.LCID) 
     countries.Add(ri.EnglishName) 
Next ci 

回答

22

Unicode协会维护几乎所有语言的语言环境翻译列表,当然包括德语。数据存储在非常简单的XML文件中。

从Unicode联合会网站下载this zip file(核心CLDR数据)并提取de.xml。所有你想要的(以及更多)在那里。

国家XPATH = /ldml/localeDisplayNames/territories/territory

你需要用另一种语言的信息,随便挑从zip文件匹配的xml文件的第二天(如:法国= fr.xml)。

+1

这一个已经做到了。没有我想要的那么干净,但它完成了工作。 – 2009-05-28 06:55:50

1

来自MSDN,评论说:“获取属性显示名称的本地化版本的.NET Framework的语言的国家/地区的全名”。

如果您有德语.net框架,它应该是德语。

+1

“如果你有德国的.net框架”......你现在的UICulture是德语。 – Joe 2009-05-22 16:40:03

0

一个快速的谷歌搜索显示this page,其中包含了很多德国国家的列表。该网站上有15种语言的列表。如果您不想依赖框架语言,您可以从中抓取数据,并使XML文件动态加载。

0

维基百科有一个List of sovereign states。由于这个wiki页面已被翻译成几乎所有的语言,我想你可以在那里截取信息。

相关问题