2010-03-12 6 views
20

Je connais trois façons d'obtenir un nom de langue complet d'un objet CultureInfo. DisplayName donne le nom dans la langue .net installée.Comment traduire les noms de langue CultureInfo

CultureInfo.DisplayName 
CultureInfo.NativeName 
CultureInfo.EnglishName 

NativeName donne le nom dans le langage 'CultureInfos'

EnglishName donne le nom en anglais (étonnamment ...)

Donc, pour CultureInfo de-DE ce qui donne (sur un anglais l'installation de)
Allemand
Deutsch
Allemand

Ma question : Existe-t-il un moyen de demander le nom de la langue de-DE dans une autre langue? Par exemple. Je veux le nom de la langue de-DE en néerlandais (qui serait 'Duits').

Répondre

15

Cette fonctionnalité est pas intégrée dans le .NET Framework

Peut-être à regarder Google Translate API

+2

Thats ce que je craignais pour. La seule traduction libre que vous obtenez est l'anglais, le langage d'installation .NET (si différent) et la traduction dans le langage natif CultureInfo. Je vais devoir peser les gains de l'utilisation de l'api google translate pour les efforts. – Yodah

4

Exemple CultureInfo.EnglishName:

public CultureInfo GetCultureInfo(string EnglishName) 
    { 
     foreach (CultureInfo info in CultureInfo.GetCultures(CultureTypes.AllCultures)) 
     { 
      if (info.EnglishName == EnglishName) 
       return new CultureInfo(info.Name); 
     } 

     return null; 
    } 
+0

Merci, je cherchais un moyen d'obtenir des informations culturelles en fonction du nom de la langue, c'est ce dont j'avais besoin – Naomi

Questions connexes