Obtenga el lenguaje del sistema operativo en c #

¿Cómo podemos obtener el lenguaje del sistema operativo actual usando Win32_OperatingSystem Class y OSLanguage variable en c #? Gracias..

Me gusta esto:

 static int Main( string[] argv ) { CultureInfo ci = CultureInfo.InstalledUICulture ; Console.WriteLine("Default Language Info:" ) ; Console.WriteLine("* Name: {0}" , ci.Name ) ; Console.WriteLine("* Display Name: {0}" , ci.DisplayName ) ; Console.WriteLine("* English Name: {0}" , ci.EnglishName ) ; Console.WriteLine("* 2-letter ISO Name: {0}" , ci.TwoLetterISOLanguageName ) ; Console.WriteLine("* 3-letter ISO Name: {0}" , ci.ThreeLetterISOLanguageName ) ; Console.WriteLine("* 3-letter Win32 API Name: {0}" , ci.ThreeLetterWindowsLanguageName ) ; return 0 ; } 

Quizás para hacer esto un poco más claro (o no) las tres culturas Installed, CurrentUI y CUrrent están configuradas de una manera no tan obvia.

Si en el panel de control de un sistema Englisk UK (Vista previa técnica de Windows 10) especifico un formato de fecha / hora alemán (suizo), el resultado del siguiente progtwig:

  CultureInfo ci = CultureInfo.InstalledUICulture; Console.WriteLine("Installed Language Info:{0}", ci.Name); ci = CultureInfo.CurrentUICulture; Console.WriteLine("Current UI Language Info: {0}", ci.Name); ci = CultureInfo.CurrentCulture; Console.WriteLine("Current Language Info: {0}", ci.Name); 

es así:

 Installed Language Info:en-GB Current UI Language Info: en-GB Current Language Info: de-CH 

Lo que significa que Instalado no puede ser influenciado, pero que CurrentUI y Current pueden diferir. Donde CurrentUI probable significa la localización del sistema operativo y la stream solo dice algo acerca de cómo se muestran las fechas y la hora de los números.

A menudo me he encontrado con los progtwigs de instalación que toman Actual para el idioma preferido donde probablemente daría una experiencia más consistente si en su lugar se usó CurrentUI.

 using System; class Program { static void Main(string[] args) { Console.WriteLine("You are speaking {0}", System.Globalization.CultureInfo.CurrentCulture.EnglishName); Console.ReadLine(); } } 

Usando C #, puedes usar la clase CultureInfo . Propiedad CurrentCulture para obtener la cultura del sistema y CurrentUICulture para la cultura del usuario.