Java 7 Standard-Gebietsschema
Habe ich gerade installiert jre7 und ich bin überrascht zu sehen, dass meine Standard-Gebietsschema ist jetzt en_US. Mit jre6 es war de_CH.
Was ist anders mit jre7? Ist das Standard-Gebietsschema nicht mehr der, der von dem Betriebssystem? (btw, ich bin mit der Windows7)
Thx für deine Antwort.
Bearbeiten:
Ich habe gesehen, das Gebietsschema für Kategorie.FORMAT ist der "alte" (de_CH). Das Gebietsschema für Kategorie.ANZEIGE nimmt die Sprache von der Sprache des Betriebssystems (in Windows ist dies getan in der Systemsteuerung > regions-und Spracheinstellungen > Tastatur und Sprachen " > Display-Sprache) und die contry aus...?
Was scheint das anders zu sein ist die Eigenschaft "Benutzer.Land". Mit Java6 bekomme ich die "CH" - und mit Java7 bekomme ich "UNS".
Ich setzen Sie einen breakpoint direkt nach dem Start der app und dem Standard-Gebietsschema en_US. Für alle Personen, die in meiner Firma ist die gleiche
InformationsquelleAutor Zardo | 2011-08-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist, wie entworfen. Java 7 hat die Art verändert, wie
Locale.getDefault()
funktioniert. Ein Mangel eingetragen wurde mit Oracle, aber Sie sagten im Grunde das ist, Wie Entworfen.Zu summieren, müssen Sie ändern Sie die Display-Sprache des OS. Ändern der Region-Format nicht mehr ausreicht.
Lesen Sie den bug-report hier: Gebietsschema.getDefault() gibt falsche Gebietsschema für Java SE 7
href="https://bugs.openjdk.java.net/browse/JDK-7073906" >fix war eigentlich auch mehr auf 7u4: bugs.openjdk.java.net/browse/JDK-2217027
Ich bin mir nicht sicher, was das Update ist, habe ich versucht Locale.getDefault() auf die neueste Version von JDK 7 und die neueste JDK-8-beta und beide zurück zu einem anderen Ergebnis als JDK <= 6
Ist das noch eine gültige Antwort? Ich denke, Sie haben sich zurückgesetzt, das feature mit Java 8.
InformationsquelleAutor dream_team
Die Veränderung ist ganz gut beschrieben in diesem blog-post und auf die auf der Seite Kompatibilität.
Beachten Sie, dass Sie das alte Verhalten wiederherstellen, indem Sie die Einstellung der
sun.locale.formatasdefault
system-Eigenschaft auftrue
.InformationsquelleAutor Jens Borgland
Scheint es einige änderungen in Bezug auf die Gebietsschema in Java 7, nämlich die Differenzierung zwischen UI und 'user' locale. Sehen diese. Es ist jetzt
setDefault(Locale.Category, Locale)
. Allerdings bedeutet dies nicht wirklich erklären, was Sie erleben - ich bin lediglich darauf hingewiesen, die Tatsache, dass es änderungen in Java 7 über locale-handling.InformationsquelleAutor merryprankster
Dieser sieht wirklich aus wie ein bug zu mir:
läuft das mit java 5 oder java 6 Drucke: 'nl_NL'
java7: 'en_US'
InformationsquelleAutor Johan Compagner
Was über die Einstellung Gebietsschema zu Beginn des Programms in folgender Weise, je nach java-version:
}
InformationsquelleAutor Alex Kartishev
Überprüfen Sie die Einstellung der "Standort" in der Windows-Systemsteuerung regions-und Sprachoptionen (Deutsch: "Region und Sprache", "Aufenthaltsort").
InformationsquelleAutor stracktracer
Wenn Sie mutig genug sind, können Sie rufen Sie die :
Dieser legt die Standard-Locale für diese beiden Kategorien
Aber natürlich kann dies auch Nebenwirkungen verursachen.
InformationsquelleAutor maryoush