2009-05-22 42 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頁面已被翻譯成幾乎所有的語言,我想你可以在那裏截取信息。

相關問題