I have a Produtos.ser
file where several objects of type Objeto
were written.
In the code method below, I want to retrieve all objects from the file and store them in an ArrayList list.
However, it only adds the first object to the ArrayList. Any help?
public ArrayList<Produto> recuperarProdutos(){
ArrayList<Produto> produtos = new ArrayList<>();
Produto p = new Produto();
ObjectInputStream leitorObj = null;
FileInputStream leitorArquivo = null;
try {
leitorArquivo = new FileInputStream("files\Produtos.ser");
leitorObj = new ObjectInputStream(leitorArquivo);
p = (Produto)leitorObj.readObject();
produtos.add(p);
} catch(EOFException e) {
try {
leitorArquivo.close();
} catch (IOException ex) {
System.out.println(ex.getMessage());
}
} catch (Exception ex) {
System.out.println(ex.getMessage());
} finally {
try {
if (leitorArquivo != null) leitorArquivo.close();
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
return produtos;
}