olá pessoal…
estou com uma duvida se alguém puder me ajudar.
a duvida esta no metodo public void desserializa_agenda(), como faço para desserializar o meu ArrayList ?
import java.util.ArrayList;
import javax.swing.JOptionPane;
import java.io.*;// para fazer a serialização //
public class agenda implements Serializable{ // serialização da classe agenda
private String Nome;
private String Endereco;
private String Telefone;
private String Email;
ArrayList<agenda> Registro = new ArrayList<agenda>();
public void set_nome(String n){
Nome = n;
}
public void set_endereco(String n){
Endereco = n;
}
public void set_Telefone(String n)
{
Telefone = n;
}
public void set_Email(String n)
{
Email = n;
}
public String get_nome(){
return Nome;
}
public String get_Endereco(){
return Endereco;
}
public String get_Telefone(){
return Telefone;
}
public String get_Email(){
return Email;
}
public void add_array_list()
{
agenda S = new agenda();
S.Nome = Nome;
S.Endereco = Endereco;
S.Telefone = Telefone;
S.Email = Email;
Registro.add(S);
}
public void imprime_arraylist_atual(int n){
//for(agenda c : Registro){
// System.out.println(c.Nome+"\n"+c.Endereco +"\n"+c.Telefone +"\n"+c.Email);
agenda a = Registro.get(n); //Obtém a primeira agenda do arraylist
Nome = a.Nome;
Endereco = a.Endereco;
Telefone = a.Telefone;
Email = a.Email;
}
public void serializa_agenda(){
for(agenda ser : Registro){ // aqui serializo to o meu ArrayList...
try{
FileOutputStream fs = new FileOutputStream("ser_agenda.ser");
ObjectOutputStream os = new ObjectOutputStream(fs);
os.writeObject(ser);
os.close();
}catch(Exception ex){
System.out.println("erro");
}
}
}
public void desserializa_agenda(){
int n;
for(agenda ser : Registro){
try{
ObjectInputStream is = new ObjectInputStream(new FileInputStream("ser_agenda.ser") );
Registro.get(n) = (agenda) is.readObject(); // aqui esta errado o compilador não aceita//
n++;
}catch(Exception ex){
System.out.println("erro descerialização");
}
}
}
}
sds
j.silvestre