Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Java

Lendo Arquivos em Java com BufferedReader – Guia Prático com Exemplos

Como ler arquivo em Java?

Java oferece variedade de classes I/O para operações de arquivo. Forma mais eficiente de ler arquivos texto é através de java.io.BufferedReader, que envolve Reader de nível inferior e bufferiza entrada para reduzir chamadas de sistema caras.

O que é BufferedReader em Java?

BufferedReader é classe que lê texto de input stream (como arquivo) bufferizando caracteres. Permite leitura rápida, linha por linha ou bloco por bloco, sem fazer system call para cada caractere.

Como métodos como read() em FileReader ou InputStreamReader podem ser custosos, envolvê-los em BufferedReader é prática comum para melhorar performance.

Padrão de uso típico:

BufferedReader reader = new BufferedReader(new FileReader("D:\\DiarioDuke.txt"));

Aqui arquivo é aberto e bufferizado para leitura eficiente.

Para exibir conteúdo do arquivo, itere cada linha até fim do arquivo:

String linhaAtual;
while ((linhaAtual = reader.readLine()) != null) {
    System.out.println(linhaAtual);
}

Loop termina quando readLine() retorna null, indicando fim do arquivo.

Exemplo BufferedReader (Pré-JDK 7)

Abaixo exemplo completo, pronto para produção, demonstrando boas práticas de manejo de recursos:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ExemploLeituraArquivo {
    public static void main(String[] args) {
        BufferedReader reader = null;
        try {
            reader = new BufferedReader(new FileReader("D:\\DiarioDuke.txt"));
            String linhaAtual;
            while ((linhaAtual = reader.readLine()) != null) {
                System.out.println(linhaAtual);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (reader != null) {
                    reader.close();
                }
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }
    }
}

Bloco finally garante que reader seja fechado, liberando recursos do sistema mesmo se exceção ocorrer.

Exemplo BufferedReader (JDK 7+ com Try-With-Resources)

Com Java 7+, statement try-with-resources simplifica limpeza. Exemplo abaixo mostra mesma lógica de forma mais concisa:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ExemploLeituraArquivoJDK7 {
    private static final String NOME_ARQUIVO = "D:\\DiarioDuke.txt";
    public static void main(String[] args) {
        try (BufferedReader br = new BufferedReader(new FileReader(NOME_ARQUIVO))) {
            String linhaAtual;
            while ((linhaAtual = br.readLine()) != null) {
                System.out.println(linhaAtual);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Usar try-with-resources fecha automaticamente BufferedReader, tornando código mais limpo e menos propenso a erros.

Java

  1. Dominando Java BufferedReader: Manipulação Eficiente de Streams de Caracteres
  2. Dominando Operações de Arquivo em Java com java.io – Criação, Leitura, Escrita e Exclusão
  3. Java Hello World: Guia Passo a Passo para Escrever Seu Primeiro Programa Java
  4. Método Java String length(): Como Obter o Tamanho de uma String (Exemplo)
  5. Entendendo Java String.charAt(): Sintaxe, Tipo de Retorno, Exceções e Exemplo Prático
  6. Dominando o Método compareTo() do Java String: Sintaxe, Casos de Uso e Exemplos Práticos
  7. Método Java String.contains(): Como Verificar Substrings – Exemplos Práticos
  8. Dominando Java String.endsWith(): Como Verificar Sufixos de String com Exemplos
  9. Algoritmo Insertion Sort em Java: Exemplo Claro e Guia Passo a Passo
  10. Selection Sort em Java: Exemplo Passo a Passo e Código Completo