ResourceBundle-Methode

Swingman

Grünschnabel
Hallo,
gibt es bei ResourceBundle eine Methode oder eine Möglichkeit, mit der man die verschiedenen ResourceBundles (also die speziellen Spracheinstellungen) wie z.B. fr für franzözisch oder de für deutsch usw bekommen kann.

:confused:
 
Zuletzt bearbeitet:
HallO!

Schau mal hier:
Code:
package de.tutorials.resbundle;

import java.util.Locale;
import java.util.ResourceBundle;

/*
 * Created on 28.12.2004@14:55:43
 *
 * TODO Licence info
 */

/**
 * @author Administrator
 * 
 * TODO Explain what I do...
 */
public class ResBundleTest {

	public static void main(String[] args) {

		System.out.println(getResourceFromBundle(
				"de.tutorials.resbundle.ResBundleTest", Locale.GERMANY,
				"key001"));

		System.out
				.println(getResourceFromBundle(
						"de.tutorials.resbundle.ResBundleTest", Locale.GERMAN,
						"key001"));

		System.out.println(getResourceFromBundle(
				"de.tutorials.resbundle.ResBundleTest", new Locale("de", "CH"),
				"key001"));

		System.out.println(getResourceFromBundle(
				"de.tutorials.resbundle.ResBundleTest", new Locale("de", "DE",
						"Vertrieb"), "key001"));

	}

	public static String getResourceFromBundle(String bundleName, Locale loc,
			String key) {
		ResourceBundle bundle = ResourceBundle.getBundle(bundleName, loc);
		return bundle.getString(key);
	}
}

Im Verzeichnis: de/tutorials/resBundle liegen nun die folgenden Dateien:
ResBundleTest_de_CH.properties
Inhalt:
key001=ResBundleTest_de_CH

ResBundleTest_de_DE.properties
Inhalt:
key001=ResBundleTest_de_DE

ResBundleTest_de.properties
Inhalt:
key001=ResBundleTest_de

ResBundleTest_de_DE_Vertrieb.properties
Inhalt:
key001=ResBundleTest_de_DE_Vertrieb

So kannst du nun ganz easy deine Anwendung Internationalisieren bzw. über die "variant" bei der Locale noch genauer das jeweilige Zielpublikum adressieren.

Gruß Tom
 
Zurück