Gostaria de uma ajudo no primeiro método que é cadastrar um novo contato
do jeito que está, ele gera essa exeção
Exception in thread “main” java.io.EOFException
at java.io.ObjectInputStream$BlockDataInputStream.peekByte(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at aula67SerializaçãoTransient.CadastrandoContatos.main(CadastrandoContatos.java:44)
Gostaria de saber porque? e como resolve-la, se alguem puder ajudar ficaria grato ! Estou começando em java intão ainda tenho essa dúvidas, Obg desde já
[code]
public class CadastrandoContatos {
/**
* @param args
* @throws FileNotFoundException
*/
public static void main(String[] args) throws Exception {
Contato linha = new Contato();
int opcao=0;
FileOutputStream endEscrita = new FileOutputStream("C:/Banco/TesteContato.ser");
ObjectOutputStream escObj = new ObjectOutputStream(endEscrita);
FileInputStream endLeitor = new FileInputStream("C:/Banco/TesteContato.ser");
ObjectInputStream leitorObj = new ObjectInputStream(endLeitor);
ArrayList<Contato> listaContato = new ArrayList<>();
menu:
do {
opcao = Integer.parseInt(JOptionPane.showInputDialog("0- Sair \n1- para cadastrar e escrever contato \n2- listar"));
switch (opcao) {
case 0:
break menu;
case 1:
listaContato.clear();
Contato contato1 = new Contato(JOptionPane.showInputDialog("Digite o nome"),JOptionPane.showInputDialog("Telefone"),
JOptionPane.showInputDialog("Celular"), JOptionPane.showInputDialog("Digite o E-mail"));
while((linha = (Contato) leitorObj.readObject()) != null){
listaContato.add(linha);
System.out.println(linha);
}
for (Contato contato : listaContato) {
escObj.writeObject(contato);
System.out.println(contato);
}
continue menu;
case 2:
continue menu;
default:
continue menu;
}
} while (true);
}}[/code]