Estou fritando a cabeça com esse código. Por favor se alguém puder me ajudar…
public static void leitor(String path) throws IOException {
BufferedReader buffRead = new BufferedReader(new FileReader(path));
String linha = "";
int i = 0;
while ((linha = br.readLine()) != null) {
System.out.println("Passo = " + i + " Linha = " + linha);
i++;
}
buffRead.close();
}
Quando executo o código acima, lendo de um arquivo .txt contendo as seguintes linhas:
Passageiro 01
passageiro 02
Passageiro 03
Passageiro 04
Passageiro 05
tenho a seguinte saída:
run:
Passo = 0 Linha =
Passo = 1 Linha =
Passo = 2 Linha = passageiro01
Passo = 3 Linha =
Passo = 4 Linha =
Passo = 5 Linha = passageiro02
Passo = 6 Linha =
Passo = 7 Linha =
Passo = 8 Linha = passageiro03
Passo = 9 Linha =
Passo = 10 Linha =
Passo = 11 Linha = passageiro04
Passo = 12 Linha =
Passo = 13 Linha =
Passo = 14 Linha = passageiro05
CONSTRUÍDO COM SUCESSO (tempo total: 0 segundos)
Alguém poderia me explicar porque é preciso 13 ciclo do laço while para que seja lido todas as 5 linhas do arquivo?