Download Introduccion a los Properties Archivo
Document related concepts
no text concepts found
Transcript
Archivos de Propiedades ¿Qué es un archivo properties? Un archivo de propiedades Java es un documento en el cual se puede almacenar propiedades de configuración de nuestra aplicación. ¿Como creamos un archivo properties? Para crear el archivo properties lo único que se necesita es crear un archivo con la extensión .properties en la carpeta de nuestro proyecto. Dicho archivo debe contener lo siguiente: nombre_propiedad=valor_propiedad #User parameters user.name=Ana user.language=español user.age=19 user.woman=True ¿Cómo obtener los valores de las propiedades en nuestra app? Para obtener los valores que registrados en un archivo para usarlo en la aplicación se debe hacer lo siguiente: a. Cargar con ayuda de la clase java.io.InputStream el contenido del archivo properties. b. Hacer uso del método getProperty(nombre_propiedad) de la clase java.util.Properties para poder extraer el valor de dicha propiedad. Creando el Archivo de Propiedades Cree un archivo properties con las siguientes propiedades dentro de la carpeta de la aplicación: basedatos=prueba usuario=carlos clave=123456 El archivo se denominará configuracion.properties es importante mantener la extensión .properties. Leyendo el Archivo de Propiedades import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class PruebaArchivoPropiedades { public static void main(String[] args) { Properties propiedades = new Properties(); InputStream entrada = null; try { entrada = new FileInputStream("configuracion.properties"); propiedades.load(entrada); System.out.println(propiedades.getProperty("basedatos")); System.out.println(propiedades.getProperty("usuario")); System.out.println(propiedades.getProperty("clave")); } catch (IOException ex) { ex.printStackTrace(); } finally { if (entrada != null) { try { entrada.close(); } catch (IOException e) { e.printStackTrace(); } } } } } Lo que se ve en consola: prueba carlos 123456 ¿Cómo se escribe un archivo properties? Para guardar los valores en propiedades y luego guardarlas un archivo de propiedades se debe hacer lo siguiente: a. Hacer uso del método setProperty(nombre_propiedad, valor_propiedad) de la clasejava.util.Properties para poder asignar el valor a dicha propiedad. b. Guardar con ayuda de la clase java.io.OutputStream el contenido del archivo properties. import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; import java.util.Properties; public class PruebaArchivoPropiedades { public static void main(String[] args) { Properties propiedades = new Properties(); OutputStream salida = null; try { salida = new FileOutputStream("configuracion.properties"); propiedades.setProperty("basedatos", "codehero"); propiedades.setProperty("usuario", "carlos"); propiedades.setProperty("clave", "123456"); // guardamos el archivo de propiedades en la carpeta de aplicación propiedades.store(salida, null); } catch (IOException io) { io.printStackTrace(); } finally { if (salida != null) { try { Al abrir el archivo: salida.close(); } catch (IOException e) { basedatos=codehero e.printStackTrace(); usuario=carlos } } clave=123456 } } } Crear el archivo Usando Objetos En un archivo de texto, escriba el siguiente texto #User parameters nombre=Ana lenguage=español edad=19 Activo=true Guarde el archivo con el siguiente nombre y extensión: Configuracion.properties Crear el archivo Usando Objetos Construya la siguiente clase: import java.util.Properties; import java.io.File; import java.io.FileInputStream; import javax.swing.JFileChooser; public class Prueba { Properties misPropiedades; File f; public Prueba(){ misPropiedades = new Properties(); misPropiedades=cargar(); } public void listarArchivo(){ misPropiedades.list(System.out); } public void mostrarDatos(){ String nombre = misPropiedades.getProperty(“nombre"); String lenguaje = misPropiedades.getProperty("lenguage"); int edad = Integer.parseInt( misPropiedades.getProperty(“edad")); boolean mujer = Boolean.valueOf( misPropiedades.getProperty(“activo")).booleanValue(); System.out.println(nombre); System.out.println(lenguaje); System.out.println(activo); } Crear el archivo Usando Objetos public Properties cargar(){ try { JFileChooser fc=new JFileChooser(System.getProperty("user.dir")); fc.showOpenDialog(fc); f=fc.getSelectedFile(); FileInputStream archivo = new FileInputStream(f); Properties propiedades = new Properties(); propiedades.load(archivo); archivo.close(); if (!propiedades.isEmpty()) { return propiedades; } } catch (Exception e) {System.out.println("No se pudo cargar el archivo properties"); } return null; } } Crear el archivo Usando Objetos Construya una clase que maneje el main que lance la ejecución del archivo public class launcher{ public static void main(String[] args) { Prueba p= new Prueba(); p.listarArchivo(); p.mostrarDatos(); } } A continuación: a. Ejecute la aplicación y verifique la carga del archivo b. Modifique el archivo de propiedades y la aplicación para que cargue los datos de automóvil c. Cree una clase automóvil, cargue los datos del properties, guárdelos en u objeto automóvil y luego visualícelos por consola