Esta clase contiene objetos de acuerdo a una localidad específica. Permite que nuestra aplicación se adapte al idioma del ordenador en que se está ejecutando. Si por ejemplo, estuvieramos en una máquina con idioma español, se mostraría el mensaje "hola mundo", si fuera inglés "hello world", y asi para cada idioma que queramos personalizar.
Crear el archivo de propiedades
Como primer paso creamos un archivo con los mensajes que vamos a personalizar, por ejemplo el clásico "Hola mundo". El archivo Mensajes.properties contendrá lo siguiente:
mensaje= Hola Mundo
titulo= Saludo
Obtener una propiedad del archivo
Para cargar el archivo, se hace lo siguiente:
ResourceBundle.clearCache(); //se limpia el cache
ResourceBundle propiedades = ResourceBundle.getBundle("Mensajes");
JOptionPane.showMessageDialog(null, propiedades.getString("mensaje"), propiedades.getString("titulo"), JOptionPane.PLAIN_MESSAGE);
En este caso se mostraría una ventana con el mensaje "Hola Mundo".
Si cambiaramos el contenido del archivo Mensajes.properties a lo siguiente:
mensaje= Hello World
titulo= Greetings
El programa automaticamente sería traducido al inglés. Se mostraría una ventana diciendo "Hello World"
Esto permite que con solo cambiar el contenido del archivo .properties el programa se pueda internacionalizar, sin tener que volver a compilarlo, sin cambiar el codigo.
Para saber si existe alguna propiedad llamada saludo2 podemos hacer lo siguiente:
propiedades.containsKey("saludo2");
Obtener todas las propiedades
Enumeration llaves = propiedades.getKeys();
while (llaves.hasMoreElements()) {
String llave = (String)llaves.nextElement();
String valor = propiedades.getString(llave);
System.out.println("llave= " + llave + ", " +
"valor= " + valor);
}
Esto imprimiria lo siguiente:
llave= mensaje, valor= Hola Mundo
llave= titulo, valor= Saludo
miércoles, 17 de septiembre de 2008
Suscribirse a:
Enviar comentarios (Atom)



No hay comentarios:
Publicar un comentario