2009-05-22 4 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-файлах.

Загрузить this zip file (core CLDR данные) с сайта Консорциума Unicode и извлечь de.xml. Все, что вы хотите (и многое другое), находится там.

Страна: XPATH = /ldml/localeDisplayNames/territories/territory

На следующий день вам нужна информация на другом языке, просто выбрать файл сопоставление XML из файла почтового индекса (например .: Французский = fr.xml).

+1

Этот трюк сделал. Не совсем так чисто, как хотелось бы, но он выполняет свою работу. –

+0

Спасибо !, это используется XPath I: SelectSingleNode ("// территория [@ type = '" + code + "']"); –

0

Существует список в соответствии с ISO 3166 доступен в Немецкой библиотеке:

http://www.d-nb.de/standardisierung/pdf/laendercodes_alph.pdf

список с английскими названиями могут быть получены из ISO:

http://www.iso.ch/iso/country_codes/iso_3166_code_lists.htm

Обновление: с немецкой локализацией .NET Framework вы можете использовать свойство DisplayName класса RegionInfo, чтобы получить локализованное название страны в Германии.

1

Из MSDN в комментарии говорится: «Получает полное имя страны/региона на языке локализованной версии .NET Framework» для свойства DisplayName.

Если у вас есть немецкий .net Framework, он должен быть на немецком языке.

+1

«Если у вас есть немецкий .net Framework» ... и ваш текущий UICulture - немецкий. – Joe

0

Быстрый поиск в Google показал this page, в котором содержится список довольно многих стран на немецком языке. Список доступен на 15 языках на сайте. Вероятно, вы можете очистить данные от него и сделать динамический файл XML, если вы не хотите полагаться на язык фреймворка.

0

Википедия имеет List of sovereign states. Поскольку эта страница вики была переведена практически на любой язык, я предполагаю, что вы можете зашифровать информацию там.

Смежные вопросы