Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Sobre o readLine() do BufferedReader

Olá, me surgiu uma dúvida sobre o método readLine() de BufferedReader. São duas dúvidas. Como que esse método faz esse iteração das linhas do meu arquivo de texto toda vez que o chamo, e após atingir a última linha, como faço para que ele volte a ler do começo novamente?

1 resposta
solução!

Ola Lucas.

O readLine le linha por linha dos caracteres até o final ou até encontrar um "\n", conforme descrito na doc https://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html#readLine--. E caso não tenha mais linhas, ele retorna null indicando que acabou a leitura do buffer. Qualquer tentativa de leitura proxima neste mesmo buffer resultará null.

Existe uma combinação dos métodos mark e reset que poderia faze-lo voltar denovo o buffer ao inicio, mas não dependendo do tamanho do arquivo pode não ser preciso. Após o final do arquivo, tenta fechar o buffer com o método close e logo depois recria-lo

in = new BufferedReader(isr);

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software