2010-03-12 23 views
20

Sé de tres formas de obtener un nombre de lenguaje lleno de un objeto CultureInfo.nombres de idioma Cómo traducir CultureInfo

CultureInfo.DisplayName 
CultureInfo.NativeName 
CultureInfo.EnglishName 

DisplayName le da el nombre en el idioma .net instalado.
NativeName le da el nombre en el idioma 'CultureInfos'.
EnglishName da el nombre en Inglés (sorprendentemente ...)

Así que para CultureInfo de-DE esto da (en la instalación de un Inglés .net)
alemán
Deutsch
alemán

Ahora mi pregunta : ¿Hay alguna manera de solicitar el nombre de idioma de de-DE en otro idioma? P.ej. Quiero el nombre de idioma de DE en holandés (que sería 'Duits').

Respuesta

15

Esta funcionalidad no está integrado en el .NET Framework

Tal vez mirar a Google Translate API

+2

eso es lo que temía por. La única traducción libre que se obtiene es Inglés, el idioma de instalación .NET (si es diferente) y la traducción en el idioma nativo CultureInfo. Voy a tener que sopesar las ganancias de usar la aplicación de traducción de Google para los esfuerzos. – Yodah

4

Ejemplo para 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

Gracias, estaba buscando una forma de obtener información cultural basada en el nombre del idioma, esto es lo que necesitaba – Naomi

Cuestiones relacionadas