Clase Contacto:
Código
// El objeto que voy a serializar (en este caso Contacto) debe implementar la interfaz Serializable. import java.io.*; this.nombre = nombre; this.apellido = apellido; } return this.nombre; } return this.apellido; } this.nombre = n; } this.apellido = a; } return this.getApellido() +" "+ this.getNombre(); } }
Tengo la clase Serializador que tiene los métodos para escribir un archivo y leer un archivo.
Clase Serializador:
Código
import java.io.*; public class Serializador{ // Escribe un objecto en un archivo // Lee un objecto que este guardado en un archivo // Al metodo le pasamos el objeto que queremos serializar y lo guardará en el archivo que se le especifique al FileOutputStream (en este caso "objeto.mio") try{ escritorArchivo.writeObject(objeto); fnfex.printStackTrace(); ioex.printStackTrace(); } } try{ lectura = lectorArchivo.readObject(); fnfex.printStackTrace(); ioex.printStackTrace(); cnfex.printStackTrace(); } return lectura; } }
Y la clase Main para serializar un objeto de tipo Contacto y después leerlo
Clase Main:
Código
public class Main{ Serializador ser = new Serializador(); Contacto yo = new Contacto("Gustavo","Diaz"); Contacto prima = new Contacto("Madeline","Guzman"); ser.escribirArchivo(yo); ser.escribirArchivo(prima); Contacto contacto = (Contacto) ser.leerArchivo("objeto.mio"); } }
Mi pregunta es ¿cómo puedo leer del archivo la información (en este caso nombre y apellido) de ambos contactos?
Así como está ahora, solo me imprime los datos del último objecto que se serializo, que se guardó en el archivo, que en este caso es el "Contacto prima". Yo quiero poder imprimir ambos nombres y apellidos o elegir cuando quiero imprimir lo del "Contacto yo" o los del "Contacto prima"