Muchas veces queremos guardar nuestros ArrayList dentro de un dispositivo no volátil. Como podría ser dentro del directorio, o en otra localización del disco duro, para ello usamos la serialización. La serialización consiste en guardar nuestro arrayList en un archivo binario dentro del disco duro. La proceso anterior a obtener datos de un archivo y pasarlo al programa se llama deserizalizar.
Para hacer esto primero necesitamos una clase objeto e implementar serialize:
public class Objeto implements Serializable{
String str; Objeto(String str) {
this.str=str; }
}
Creamos nuestros objetos y lo añadimos a ArrayList:
ArrayList<Objeto> objList = new ArrayList();
Objeto objeto1 = new Objeto("str");
Objeto objeto2 = new Objeto("str2");
Objeto objeto3 = new Objeto("str3");
Objeto objeto4 = new Objeto("str4");
objList.add(objeto1);
objList.add(objeto2);
objList.add(objeto3);
objList.add(objeto4);
Lo guardado en un fichero.txt de la siguiente forma:
try {
OutputStream file = new FileOutputStream("fichero.txt");
OutputStream buffer = new BufferedOutputStream(file);
ObjectOutput output = new ObjectOutputStream(buffer);
output.writeObject(objList);
output.close();
buffer.close();
} catch (Exception ex) {
System.out.println("Error "+ex.getMessage()); }
Lo leemos en un fichero.txt de la siguiente forma:
try {
InputStream file = new FileInputStream("fichero.txt");
InputStream buffer = new BufferedInputStream(file);
ObjectInput input = new ObjectInputStream(buffer);
objList = (ArrayList) input.readObject();
} catch (Exception ex) {
System.out.println("Error "+ex.getMessage());
}
Pues hasta aquí mis apuntes de hoy, espero que hayan aprendido algo y haya sido entretenido. Sin más me despido, un saludo y hasta la próxima, chao
Gracias por visitar mi blog de informática, mi nombre es Tomás y soy formador y desarrollador web. Si quiere usted dejarme alguna sugerencia, ayuda o quiere un servicio de formación estoy escuchando ofertas en tomas.gonzalez@infogonzalez.com, en Facebook a https://www.facebook.com/Infogonzalez estoy deseando escucharle. Su duda o sugerencia NO molesta.