Eu tenho uma arquivo chamado “series.txt” que contém o seguinte conteúdo:
Game of Thrones;Drama;10.0;
Breaking Bad;Drama;8.0;
Stranger Things;Fantasia;7.0;
Greys Anatomy;Drama;9.0;
Exatamente dessa forma, com um nome, gênero e nota de cada série em uma linha.
O que eu preciso fazer é instanciar um objeto para cada série, cada linha sendo um objeto, e os atributos (nome, gênero , nota) são delimitados por “;”. Após eu devo salvar um arquivo binário esses objetos.
Para instanciar os objetos eu fiz da seguinte maneira:
public ArrayList<Serie> instanciarSeries(BufferedReader buffer) {
ArrayList<Serie> series = new ArrayList<>();
String linha;
try {
while((linha = buffer.readLine()) != null)
{
String[] atributoSeries = buffer.readLine().split(";");
float nota = Float.parseFloat(atributoSeries[2]);
series.add(new Serie(atributoSeries[0], atributoSeries[1], nota));
}
} catch (IOException e) {
System.out.println("Erro de entrada e saída.");
e.printStackTrace();
}
return series;
}
Nesse ponto já começa o problema, pois os objetos que são passados para o ArrayList são apenas a segunda e quarta linha, logo quando eu crio o arquivo binário ele só apresenta as duas que estavam no ArrayList