Los archivos .Properties son utilizados en java generalmente para almacenar parametros configurables de una aplicación como traducciones, valores, direcciones web, etc.
PROYECTO NETBEANS
1. Crear un nuevo proyecto en Netbeans, llamaño por ejemplo: jcProperties_Sample.
2. Para crear un nuevo archivo .Properties en el proyecto, clic derecho sobre el paquete en donde se creara el archivo, escoger NUEVO - > OTRO.
3. En la ventana que aparece escoger la opcion OTRO y despues buscar "Archivo de Propiedades", seleccionarlo y presionar siguiente.
4. En esta ventana se debe dar un nombre unico al archivo, para nuestro ejemplo, lo llamaremos "datos", presione TERMINAR para crear el archivo
5. El proyecto debe tener la siquiente forma:
6. Netbeans nos crea un archivo ,Properties vacio, debemos colocar algunos datos para continuar, por ejemplo, coloca los siguientes datos.
Hasta el momento ya tenemos creado y llenado el archivo de propiedades, ahora veremos como utilizarlo.
8. Crea una nueva clase, llamala jcProperties.java
El codigo para la clase es:
package jcproperties_sample; import java.io.IOException; import java.util.Properties; /** * @web http://jc-mouse.blogspot.com/ * @author Mouse */ public class jcProperties { public Properties getProperties() { try { //se crea una instancia a la clase Properties Properties propiedades = new Properties(); //se leen el archivo .properties propiedades.load( getClass().getResourceAsStream("datos.properties") ); //si el archivo de propiedades NO esta vacio retornan las propiedes leidas if (!propiedades.isEmpty()) { return propiedades; } else {//sino retornara NULL return null; } } catch (IOException ex) { return null; } } }
Esta clase, te permite leer el archivo .Properties que esta contenido dentro del JAR de la aplicación, tambien puede utilizarse archivos externos sin ningun problema.
9. Para implementar este clase, por el momento solo desde consola, el codigo para la clase MAIN es:
package jcproperties_sample; import java.util.Properties; /** * @web http://jc-mouse.blogspot.com/ * @author Mouse */ public class Main { public static void main(String[] args) { //se crea una instancia a nuestra clase Properties mispropiedades = new jcProperties().getProperties(); //se leen las propiedades indicando el KEY (identificador) y se imprime System.out.println(mispropiedades.getProperty("Description")); System.out.println(mispropiedades.getProperty("Question")); System.out.println(mispropiedades.getProperty("Warning")); System.out.println(mispropiedades.getProperty("Important")); //si no existe la KEY que indicamos, este devolvera NULL System.out.println(); System.out.println("Key no existe devuelve: " + mispropiedades.getProperty("keynoexiste")); } }
10. Ejecuta el proyecto, si hiciste todo bien, podras ver el siguiente resultado
7 comentarios:
jc cheverisia tu pagina ,hay temas muy buenos d java que no hay en otros lados QUE ORIGINAAAL,podrias ayudarme en un tema como medir con exactitud el consumo del cpu,memoria,la lista de los procesos sin utilizar la libreria sigar si no con otros metodos puedes hacerme ese gran favor
que tal brother, oe tu blog esta xvre, pero podrias subir los codigos a otro servidor? megaupload o mediafire, porque quiero ver los codigos y no pueod descaragar nada.
gracias
el hosting donde estan los archivos es gratuito y aveces se satura :), solo tienes que recargar la pagina
Excelente! Muchas gracias!
Tengo un archivo properties donde almaceno alguna información referida a el ip de mi servidor, la gestion en la que se esta trabajando y esas cosas. Mi pregunta es la siguiente. como puedo cambiar programaticamente esos datos desde la aplicación , por ejemplo cambiar la gestion de 2012 a 2013 o algo asi, gracias de antemano
Hola! Si estas interesado en traducir archivos .properties, yo recomiendo altamente esta rápida y intuitiva herramienta en línea para la localización de software: https://poeditor.com/
Hola estoy comenzando en el mundo de Java y me parece grandioso como has explicado este tema, lo he comprendido, solo tengo una duda, como leo el archivo .properties si se encuentra dentro de otro package??
Gracias y saludos.
Publicar un comentario