Como ler uma linha de arquivo por linha em java

Como ler uma linha de arquivo por linha em java
Os arquivos podem ser enormes em tamanho contendo centenas e milhares de linhas de informação, portanto, em vez de ler o arquivo inteiro que levará recursos do sistema, podemos imprimir arquivos de texto linha por linha usando BufferredReader classe em java. Portanto, neste artigo, forneceremos uma explicação completa junto com um código que pode ser usado para ler seus arquivos. Então vamos começar

Lendo arquivos

Para ler qualquer arquivo, você precisa inicializar um processo de manuseio de arquivos em Java, que você pode fazer digitando:

importar java.io.*;

Em seguida, importamos uma classe usada para ler dados do teclado quando pressionado pelo usuário, como mostrado abaixo:

importar java.util.Scanner;

Depois disso, criamos uma aula pública em que toda a nossa codificação residirá digitando:

classe pública FileReaderlineByline
..

Esta será sua principal função dentro de uma classe em que passamos no argumento da string:

public static void main (string [] args)

Agora estamos inicializando um arquivo com o nome de 'funcionários.txt 'junto com o caminho onde está localizado:

Arquivo f = novo arquivo ("funcionários.TXT");

Agora, inicializamos uma variável do leitor de arquivos 'fr' que será usada para buscar o conteúdo de todo o arquivo e definir inicialmente o valor como NULL:

FileReader fr = null;

Depois disso, também inicializamos um leitor tamponado que será usado para ler a linha de preenchimento por linha e definir seu valor também como NULL:

BufferErader Br = null;

É uma etapa obrigatória implementar o processo de manuseio de exceção aqui, pois às vezes é possível que você esteja lendo um arquivo enorme ou em caso de qualquer erro, então o programa pode ser travado, o que torna um arquivo corrompido que você está tentando ler. Então, para fazer isso, você precisa implementar o processo de 'tentativa' e 'captura'. Dentro do corpo, você deve ler o arquivo para fins de segurança, como mostrado abaixo:

tentar

fr = novo java.io.Filereader (f);
Br = new BufferredReader (FR);
while ((linha = BR.Leia a linha())!= nulo)

Sistema.fora.println (linha);

Br.fechar();
fr.fechar();

É realmente importante ler arquivos linha por linha, porque às vezes o arquivo tem um tamanho enorme e você não pode ler o arquivo inteiro, pois isso terá um grande impacto no desempenho do seu sistema. Agora, o próximo é a parte de captura que será executada apenas se ocorrer algum erro durante o processo de leitura do arquivo e sua sintaxe for a seguinte.

Catch (ioexception ex)
Sistema.errar.println ("Erro ao ler o arquivo:"+ ex.getMessage ());

Agora, é aqui que mostraremos todo o código que explicamos em pedaços na parte anterior, que é mostrada abaixo:

importar java.io.*;
importar java.util.Scanner;
classe pública FileReaderlineByline
public static void main (string [] args)
Sistema.fora.println ("Leitura de arquivo de arquivo por linha usando o objeto BufferReader \ n");
Sistema.fora.println ("");
Arquivo f = novo arquivo ("funcionários.TXT");
FileReaderfr = null;
BufferredReaderbr = null;
tentar

Linha de string;
fr = novo java.io.Filereader (f);
Br = new BufferredReader (FR);
while ((linha = BR.Leia a linha())!= nulo)

Sistema.fora.println (linha);

Br.fechar();
fr.fechar();
//tentar
Catch (ioexception ex)
Sistema.errar.println ("Erro ao ler o arquivo:"+ ex.getMessage ());
//pegar
//principal()
//aula

Se você deseja executar esse código Java no sistema operacional Linux, você pode fazer isso usando qualquer editor de texto de sua escolha. Por exemplo, estamos usando um editor de texto nano para que faça isso digitando.

$ nano filereaderlineByLine.Java

O próximo passo é escrever o código e salvá -lo:

Agora, para executar este código, você precisa primeiro garantir que tenha instalado o aplicativo Java Development Kit (JDK) em seu sistema operacional Linux digitando:

$ sudo apt install default-jdk

Depois disso, você precisa compilar o código primeiro antes de tentar executar o programa.

$ javac filereaderlinebyline.Java
$ java filereaderlinebyline

Agora você pode ver que, depois de executar o arquivo, está lendo dados disponíveis no arquivo de texto de "Funcionários.TXT" que é mostrado abaixo:

Observação: Você precisa abrir um terminal e depois acessar o mesmo diretório em que este arquivo de texto está presente, caso contrário, você não poderá ler este arquivo.

Lendo arquivos linha por linha usando a classe Scanner em java

Há mais um método para ler arquivos linha por linha é usando uma classe de scanner em java e, para isso, você precisa digitar.

importar java.io.Arquivo;
importar java.io.FilenotfoundException;
importar java.util.Scanner;
classe pública ReadFilelineByLine
public static void main (string [] args)
tentar
Scanner Scanner = New Scanner (novo arquivo ("funcionários.TXT"));
enquanto (scanner.hasNextLine ())
Sistema.fora.println (scanner.nextline ());

Scanner.fechar();
catch (filenotfoundException e)
e.printStackTrace ();


Conclusão

Às vezes, os arquivos podem ser enormes em tamanho contendo centenas e milhares de linhas de informação. Em vez de ler o arquivo inteiro que levará recursos do sistema, podemos lê -los linha por linha usando o BufferredReader classe em java. Neste artigo, ensinamos a você como você pode ler qualquer arquivo usando uma linguagem de programação Java e, para isso, você precisa importar o processo de manuseio de arquivos. Você também precisa implementar o processo de tentativa e captura que é usado para lidar com as exceções do arquivo em caso de qualquer erro ao ler um arquivo que foi discutido neste artigo.