Aktuelle UI/Display Sprache von Windows ermitteln

tobyG

Grünschnabel
Hallo

wie kann ich die Display bzw UI Sprache des aktuellen Benutzers ermitteln?

Locale.getDefault() ist nicht zuverlässig
Benötigt für Java 6+7

Java 7 required:
Locale uiLocale = Locale.getDefault(Locale.Category.DISPLAY);

Ein Tipp war dies, nur kommt da jeweils null:
System.out.println(System.getenv("LC_MESSAGES"));
System.out.println(System.getenv("LANG"));
System.out.println(System.getenv("LANGUAGE"));

Ich habe ein Windows 7 und wenn ich Locale.getDefault() rufe kommt deutsch.
Ich habe deutsch als Tastatur und Location aber die displaysprache ist englisch

wie komme ich an diesen wert?

danke
 
sowas?
Java:
		Properties properties = System.getProperties();
		System.out.println(properties.get("user.country"));
		System.out.println(properties.get("user.language"));

gibt viel was man abrfragen, kp welche sprahe fürs display ist, das hier gibt dir ne liste:
Java:
Properties properties = System.getProperties();
properties.list(System.out);
 
Zuletzt bearbeitet:
leider nein.
jeweils nur deutsch/DE enthalten...

Wie gesagt english ist als displaysprache eignestellt

:-)

In der Registry wäre das:

HKEY_CURRENT_USER\Control Panel\Desktop
Value and value data: PreferredUILanguages=en-US (or de-de, fr-fr ect.)
 
Zurück