java bufferedreader read all lines

java bufferedreader read all lines

Para ler todas as linhas de um arquivo em Java usando a classe BufferedReader, você pode usar o método readLine em um loop enquanto houver mais linhas para ler. Aqui está um exemplo de como fazer isso:

‮er‬fer to:lautturi.com
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class Main {
  public static void main(String[] args) {
    try {
      // Abre o arquivo para leitura
      BufferedReader reader = new BufferedReader(new FileReader("arquivo.txt"));

      // Cria uma lista para armazenar as linhas lidas
      List<String> linhas = new ArrayList<>();

      // Lê as linhas do arquivo enquanto houver mais linhas para ler
      String linha;
      while ((linha = reader.readLine()) != null) {
        linhas.add(linha);
      }

      // Fecha o arquivo
      reader.close();

      // Faça alguma coisa com as linhas lidas aqui...
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

Isso lerá todas as linhas do arquivo e as armazenará em uma lista de strings. Depois, você pode fazer o que quiser com essa lista, como imprimir as linhas ou processá-las de alguma outra maneira.

Observe que é necessário tratar a exceção IOException caso ocorra um erro ao abrir o arquivo ou ao ler as linhas. Além disso, é importante lembrar de fechar o arquivo quando terminar de ler, para liberar os recursos do sistema.

Se você quiser ler todas as linhas de um arquivo em uma única string, pode usar o método lines da classe Files da biblioteca java.nio.file ao invés de BufferedReader. Aqui está um exemplo de como fazer isso:

import java.nio.file.Files;
import java.nio.file.Paths;

public class Main {
  public static void main(String[] args) {
    try {
      // Lê todas as linhas do arquivo em uma única string
      String texto = Files.readString(Paths.get("arquivo.txt"));

      // Faça alguma coisa com o texto aqui...
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

Isso lerá todo o conteúdo do arquivo em uma única string, incluindo os caracteres de nova linha.

Created Time:2017-11-03 00:14:46  Author:lautturi