Ficheros

Es fácil escribir y leer de ficheros, lo que hace que Properties se utilice frecuentemente para tener ficheros externos de configuración.

 

java.util.Properties

void load(InputStream input)

lee bytes

lo escrito con store(OutputStream)

void load(Reader reader)

lee caracteres

lo escrito con store(Reader)

void loadFromXML(

           InputStream input)

lee un fichero en XML

lo escrito con storeToXML(OutputStream, …)

void store(OutputStream out,

           String comentario)

escribe en un fichero de bytes

void store(Writer out,

           String comentario)

escribe en un fichero de caracteres

void storeToXML(OutputStream out,

           String comentario)

escribe en un fichero XML

void storeToXML(OutputStream out,

           String comentario,

           String codificacion)

escribe en un fichero XML utilizando una codificación explícita

 

Los formatos son bastante evidentes:

 

void guarda(Properties p, File f)

        throws IOException {

    Writer writer = new FileWriter(f);

    p.store(writer, "mis parejas");

}

 

#mis parejas

#Wed Dec 02 09:01:09 CET 2009

alto=400

titulo=Aplicación Gráfica

ancho=600

 

 

void carga(Properties p, File f)

            throws IOException {

    Reader reader= new FileReader(f);

    p.load(reader);

}   

 

 

void guardaXML(Properties p, File f)

        throws IOException {

    OutputStream out = new FileOutputStream(f);

    p.storeToXML(out, "mis parejas", "iso-8859-1");

}                          

 

<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>

<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">

<properties>

<comment>mis parejas</comment>

<entry key="alto">400</entry>

<entry key="titulo">Aplicación Gráfica</entry>

<entry key="ancho">600</entry>

</properties>

 

 

void cargaXML(Properties p, File f)

            throws IOException {

    InputStream stream= new FileInputStream(f);

    p.loadFromXML(stream);

}   

 

Temas relacionados

28. Properties (clase) java.util.Properties