Lista de matrices es serializable de defecto. Esto significa que no es necesario implementar la interfaz serializable explícitamente para serializar una ArrayList. En este tutorial aprenderemos cómo serializar y deserializar una ArrayList.
Ejemplo:
Publicación por entregas: Ejecute la siguiente clase y creará un archivo. mi archivo que tendrá el objeto ArrayList en forma de flujo de bytes. Usaríamos “myfile” al final de los receptores para recrear el objeto a partir del flujo de bytes. Nota: No hemos implementado la interfaz serializable en la siguiente clase porque ArrayList ya ha sido serializado por defecto.
package beginnersbook.com; import java.util.ArrayList; import java.io.*; public class ArrayListSerialization { public static void main(String [] args) { ArrayList<String> al=new ArrayList<String>(); al.add("Hello"); al.add("Hi"); al.add("Howdy"); try{ FileOutputStream fos= new FileOutputStream("myfile"); ObjectOutputStream oos= new ObjectOutputStream(fos); oos.writeObject(al); oos.close(); fos.close(); }catch(IOException ioe){ ioe.printStackTrace(); } } }
Desserialización:
En esta clase estamos obteniendo el flujo de bytes de mi archivo que almacenamos usando la clase anterior. Estamos enviando el tipo de objeto devuelto a ArrayList y mostrando los elementos de ArrayList. Mire la salida: estamos obteniendo los mismos elementos que agregamos a ArrayList antes de la serialización.
package beginnersbook.com; import java.io.*; import java.util.ArrayList; public class DeSerializationClass { public static void main(String [] args) { ArrayList<String> arraylist= new ArrayList<String>(); try { FileInputStream fis = new FileInputStream("myfile"); ObjectInputStream ois = new ObjectInputStream(fis); arraylist = (ArrayList) ois.readObject(); ois.close(); fis.close(); }catch(IOException ioe){ ioe.printStackTrace(); return; }catch(ClassNotFoundException c){ System.out.println("Class not found"); c.printStackTrace(); return; } for(String tmp: arraylist){ System.out.println(tmp); } } }
Producción:
Hello Hi Howdy
Eso es todo lo que tengo para el tema Serialización de ArrayList. Por favor hazme saber si tienes preguntas.