Montag, 10. August 2009

Internationalisierung

Oft stößt man bei Internationalisierung von Java-basierter Software auf das Problem das die Property-Dateien von Java mit einem festen Encoding (ISO-8859-1) eingelesen werden, das man auch nicht ändern kann. Diese Property-Datei dienen zur Aufnahme der lokalisierten Zeichenketten. Wenn es sich nur um gelegentliche Zeichen handelt, die nicht in diesem Encoding vorhanden sind kann man diese Zeichen in UTF-Schreibweise eingeben. Alternatif schreibt man sich eine eigene Klasse die Proppertie-Dateien mit unterschiedlichen Encodings einlesen kann. Dann muss man nur noch eine Methode schreiben mit denen man auf diese lokalisierten String zugreifen kann. Besonders elegant finde ich, folgende Methode String _(String Key) zu definieren und diese dann statisch zu importieren. Noch eleganter wird es wenn man den Key als Fallbackwert zurückgibt wenn der Key nicht vorhanden ist. Natürlich sollt man das in Fehlerlog dann eintragen. Ein wirkliche Alternative zu der Lokalisierung via Property-Dateien ist die Benutzung von XLIFF (XML Localization Interchange File Format).

Keine Kommentare:

Kommentar veröffentlichen