Unterschiede
Hier werden die Unterschiede zwischen der gewählten und der aktuellen Version gezeigt.
| java:locale-language-land 2009/11/04 10:49 | java:locale-language-land 2020/01/22 20:59 aktuell | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== Locale, Sprache, Land ====== | + | [[java|Java - Allgemein]]\\ |
| + | ====== Locale, Internationalisierung, Sprache, Land ====== | ||
| //java.util.Locale//\\ | //java.util.Locale//\\ | ||
| Die Sprachen- und Landesinformationen werden in der Klasse Locale zusammengefasst.\\ | Die Sprachen- und Landesinformationen werden in der Klasse Locale zusammengefasst.\\ | ||
| Zeile 29: | Zeile 30: | ||
| Dabei wird die Sprache über eine zwei-Buchstabenkürzel nach ISO 639 definiert (Kleinbuchstaben).\\ | Dabei wird die Sprache über eine zwei-Buchstabenkürzel nach ISO 639 definiert (Kleinbuchstaben).\\ | ||
| Das Land wird über ein zwei-Buchstabenkürzel nach ISO 3166 definiert (Großbuchstaben).\\ | Das Land wird über ein zwei-Buchstabenkürzel nach ISO 3166 definiert (Großbuchstaben).\\ | ||
| + | \\ | ||
| + | Mit dieser Locale können unter Anderem Sprachdateien geladen werden.\\ | ||
| + | Die Sprachdateien müssen nach einem bestimmten Schema benannt werden.\\ | ||
| + | Der Dateiname muss auf "_de" enden (dabei ist "de" natürlich nur beispielhaft, es muss dass ISO 639-Kürzel sein).\\ | ||
| + | Die Dateiendung lautet auf ".properties".\\ | ||
| + | Für jede unterstütze Sprache muss eine Datei erstellt werden. Eine Datei ohne ISO-Endung ist erlaubt. Dies ist dann die Default-Datei, welche verwendet wird, wenn keine eigen Datei für die Sprache gefunden wird.\\ | ||
| + | Der Inhalt der Dateien besteht aus Key-Value-Paaren.\\ | ||
| + | \\ | ||
| + | Bespiel einer deutschen properties-Datei:\\ | ||
| + | HELLO = Hallo\\ | ||
| + | LOGIN = Anmelden\\ | ||
| + | \\ | ||
| + | Beispiel für die Dateinamen:\\ | ||
| + | lang/myprogram.properties\\ | ||
| + | lang/myprogram_de.properties\\ | ||
| + | lang/myprogram_fr.properties\\ | ||
| + | Die Datei ohne ISO-Kürzel ist im meist die englische Übersetzung. Alle Dateien müssen über den Classpath zu finden sein!\\ | ||
| + | \\ | ||
| + | Ein komplettes Code-Beispiel:\\ | ||
| + | <code java> | ||
| + | Locale german = new Locale( "de", "DE" ); // deutsch, Deutschland | ||
| + | ResourceBundle bundle = PropertyResourceBundle.getBundle("lang.myprogram", german); | ||
| + | System.out.println(bundle.get("LOGIN")); // Ausgabe: "Anmelden" | ||
| + | </code> | ||
| + | |||