lunes, 14 de noviembre de 2011

serializar java

e visto a gente que tiene problema al recordarse de todo el vergueo q se hace siempre para serializar algo en java esta clase que subi serializa cualquier objeto y lo lee en un archivo con el nombre que quieras

como recomendacion podemos usar estas librerias


import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FilterOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.logging.Level;
import java.util.logging.Logger;

ahora empezemos con la escritura de los archivos
en estemetodo lo que pido de parametro es el objeto que voy a serializar por ejemplo un array list u otro objeto como un String por ejemplo y la direccion es un String con la direccion de donde se va a insertar si solo ponemos el nombre por defecto lo grabara en la carpeta del proyecto


public void escribir(Object entrada,String direccion) {
try {
//aqui mando a guardar el el archivo a la direccion seleccionada
escritor= new ObjectOutputStream(
new FileOutputStream(direccion));
if(entrada==null){System.out.print("entrada basia");
//salida de consola si no viene nada en el objeto o un null
}
else{
//se escribe que el objeot en el archivo creado
escritor.writeObject(entrada);
}
//cerrar el archivo
escritor.close();
} catch (IOException ex) {
//exepcion del archivo
Logger.getLogger(serializadora.class.getName()).log(Level.SEVERE, null, ex);
}

}


ahora la lectura de archivo
esta funcion debuelbe un objeto quese encuentra en el archivo con la direccion espesificada en el parametro de la funsion


public boolean existe(String direccion){
boolean salida=false;
int a=1;
try {
lector = new ObjectInputStream(
new FileInputStream(direccion));

a=0;
lector.close();

} catch (IOException ex) {
Logger.getLogger(serializadora.class.getName()).log(Level.SEVERE, null, ex);
}



if(a==1){
salida= false;
}else{
salida =true;
}

return salida;
}






serializadora.java

No hay comentarios:

Publicar un comentario