-1
Personal when I try to read the objects saved in a file appears the following error message.
Nome: Gabriel
Código: 123
Telefone: 12345678
java.io.StreamCorruptedException: invalid type code: AC
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1600)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:430)
    at Cliente.lerArquivoL(Cliente.java:107)
    at Cliente.ler(Cliente.java:91)
    at TesteCliente.main(TesteCliente.java:8)
What do I have to do to remove this invalid type code: AC that he’s reading? The problem is when you’re writing that it goes "garbage" or is in reading that you’re picking up this "garbage" ?
Java cliete.
import java.io.EOFException;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.file.StandardOpenOption;
import java.util.NoSuchElementException;
public class Cliente implements Serializable {
    private static final long serialVersionUID = 1L;
    private static ObjectOutputStream output;
    private static ObjectInputStream input;
    private int codigo;
    private String nome;
    //private Endereco endereco;
    private int telefone;
    public Cliente() {}
    public Cliente(String nome, int codigo, /*Endereco endereco*/ int telefone) {
        this.nome = nome;
        this.codigo = codigo;
        //this.endereco = endereco;
        this.telefone = telefone;
    }
    public int getCodigo() {
        return codigo;
    }
    public void setCodigo(int codigo) {
        this.codigo = codigo;
    }
    public String getNome() {
        return nome;
    }
    public void setNome(String nome) {
        this.nome = nome;
    }
//    public Endereco getEndereco() {
//        return endereco;
//    }
//    public void setEndereco(Endereco endereco) {
//        this.endereco = endereco;
//    }
    public int getTelefone() {
        return telefone;
    }
    public void setTelefone(int telefone) {
        if (telefone > 0) {
            this.telefone = telefone;
        }
    }
    public static void escrever(Cliente cliente) {
        abrirArquivoE();
        adicionarE(cliente);
        fecharArquivoE();
    }
    private static void abrirArquivoE() {
        try {
            output = new ObjectOutputStream(Files.newOutputStream(Paths.get("./bin/clientes.obj"), StandardOpenOption.CREATE,StandardOpenOption.APPEND));
        }
        catch (IOException ioException) {
            ioException.printStackTrace();
        }
    }
    private static void adicionarE(Cliente cliente) {
        try {
            output.reset();
            output.writeObject(cliente);
        }
        catch (NoSuchElementException elementException) {
            elementException.printStackTrace();
        }
        catch (IOException ioException) {
            ioException.printStackTrace();
        }
    }
    private static void fecharArquivoE() {
        try {
            if (output != null)
                output.close();
        } catch (IOException ioException) {
            ioException.printStackTrace();
        }
    }
    public static void ler() {
        abrirArquivoL();
        lerArquivoL();
        fecharArquivoL();
    }
    private static void abrirArquivoL() {
        try {
            input = new ObjectInputStream(Files.newInputStream(Paths.get("./bin/clientes.obj")));
        }
        catch (IOException ioException) {
            ioException.printStackTrace();
        }
    }
    private static void lerArquivoL() {
        while (true) {
            try {
                Cliente cliente = (Cliente) input.readObject();
                System.out.printf("Nome: %s\n", cliente.getNome());
                System.out.printf("Código: %d\n", cliente.getCodigo());
                System.out.printf("Telefone: %d\n", cliente.getTelefone());
            }
            catch (EOFException endOfFileException) {
                endOfFileException.printStackTrace();
            }
            catch (ClassNotFoundException classNotFoundException) {
                classNotFoundException.printStackTrace();
            }
            catch (IOException ioException) {
                ioException.printStackTrace();
                break;
            }
        }
    }
    private static void fecharArquivoL() {
        try {
            if (input != null)
                input.close();
        } catch (IOException ioException) {
            ioException.printStackTrace();
        }
    }
}
Class with the main method, Testeclient.java
public class TesteCliente {
    public static void main(String[] args) {
        Cliente.escrever(new Cliente("Gabriel", 123, 12345678));
        Cliente.escrever(new Cliente("Maria", 124, 1234567889));
        Cliente.escrever(new Cliente("Carlos", 125, 1234567890));
        Cliente.escrever(new Cliente("Pedro", 126, 1234567890));
        Cliente.ler();
    }
}