Locale

Status
Nicht offen für weitere Antworten.

siba

Bekanntes Mitglied
Hallo!

Ich wollte eine Liste aller "Localen" dieser Welt haben! Ich habe es mit untenstehendem Code versucht und habe keine Methode gefunden, die mir z.B. die Locale für Frnakreich France ausgibt! Untenstehender Code gibt z.B. für Frankreich Frankreich: FR + fr aus! Wie schaffe ich es, daß er Frankreich: France + fr ausgibt, also die Locale und nicht die Abkürzung?

Code:
import java.util.Locale;

public class Laenderkennzahlen {
	public static void main(String[] args) {
		for (Locale l: Locale.getAvailableLocales()){
			System.out.println(l.getDisplayCountry() + ": " + l.getCountry()+ " + " + l.getLanguage());
		}
	}
}
 
R

Roar

Gast
wie sollte er dazu kommen "France" auszugeben? getDisplayCountry(Locale.US) sollte "France" ausgeben, aber wenn die default locale deutsch ist kommt natürlich "Frankreich"
 

siba

Bekanntes Mitglied
Eine nicht ganz unberechtigte Frage! Aber die Locale heißt ja Locale.France und nicht Locale.Frankreich! Ich hätte gerne, daß er statt FR France ausdruckt, da ich mir ja schlecht bei jeder Locale überlegen kann, wie ich dann aus der Abkürzung die Locale mache. Für Frankreich reicht mein Englisch gerade so aus, aber sonst, verlassen mich vielleicht die Geister! Ich habe irgendwie alle Methoden der Locale-Klasse ausprobiert, aber leider nichts entsprechendes gefunden! Vielleicht gibt es auch nichts entsprechendes?!?!?
 

Bleiglanz

Gesperrter Benutzer
du meinst den Namen der statischen Konstanten?
Code:
Locale.FRANCE
ist nur "syntatic sugar", der dafür verwendete Name "FRANCE" hat ansonsten keinerlei Bedeutung - den kannst du auch nicht aus der API erfragen, da die meisten Locales gar kein solchen statisches LuxusMember haben

wenn du den Namen einer Locale in dieser Sprache (Locale) selbst (!) haben willst dann mach

Code:
myLocale.getDisplayCountry(myLocale)
 
R

Roar

Gast
ibs hat gesagt.:
Eine nicht ganz unberechtigte Frage! Aber die Locale heißt ja Locale.France und nicht Locale.Frankreich!
das sind variablennamen, was haben die mit dem inhalt der objekte zu tun?

Ich hätte gerne, daß er statt FR France ausdruckt, da ich mir ja schlecht bei jeder Locale überlegen kann, wie ich dann aus der Abkürzung die Locale mache.
getDisplayCountry() gibt dir doch den namen des landes aus? was willst du mehr?

Für Frankreich reicht mein Englisch gerade so aus
frankreich ist deutsch. und dein programm gibt doch auf frankreich aus!?

aber leider nichts entsprechendes gefunden! Vielleicht gibt es auch nichts entsprechendes?!?!?
ich hab dir oben geantwortet....
 

Mag1c

Top Contributor
und was noch fehlt:

die Locale wird aus dem Language-Code und dem Country-Code (ISO-3166) gebildet. Siehe API. Die Ländernamen sind hier nur schnickschnack.

Gruß
Mag1c
 

siba

Bekanntes Mitglied
schnickschnack ;-)! Was für ein Wort! Aber irgendwie bin ich meiner Antwort nicht näher gekommen! Also, wenn ich zum Beispiel folgende Codezeile eingebe, kann ich nicht Locale.FR schreiben! Deswegen wollte ich gerne wissen, wie man solche Konstanten herausfinden kann! Aber wenn es keine Lösung gibt, Eclipse macht ja eigentlich tolle Vorschläge ............

Code:
String str1 = String.format(Locale.FRANCE, "So wird eine Integerzahl formatiert: %.2f", d);
 

Mag1c

Top Contributor
Hi,

man findet die Konstanten ganz einfach heraus: schau in die API (Javadoc). Da stehen die alle drin. Bei mir sind es ganze 21 Konstanten von denen 10 asiatischen Bezug haben. Also alles recht übersichtlich.

Gruß
Mag1c
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben