Cómo leer un archivo línea por línea en java

Cómo leer un archivo línea por línea en java
Los archivos pueden ser de gran tamaño que contienen cientos y miles de líneas de información, por lo que en lugar de leer el archivo completo que tomará los recursos del sistema, podemos imprimir archivos de texto en línea por línea usando Listador buffered Clase en Java. Entonces, en este artículo, le proporcionaremos una explicación exhaustiva junto con un código que se puede usar para leer sus archivos. Entonces empecemos

Leer archivos línea por línea usando la clase BufferedReader en Java

Para leer cualquier archivo, debe inicializar un proceso de manejo de archivos en Java que pueda hacer escribiendo:

importar java.IO.*;

A continuación, hemos importado una clase que se usa para leer datos del teclado cuando el usuario lo presiona como se muestra a continuación:

importar java.utilizar.Escáner;

Después de eso, hemos creado una clase pública donde toda nuestra codificación residirá escribiendo:

clase pública FileReaderLineByLine

Esta será su función principal dentro de una clase donde hemos pasado el argumento de cadena:

Public static void main (String [] args)

Ahora estamos inicializando un archivo con el nombre de 'Empleados.txt 'junto con el camino donde se encuentra:

Archivo F = nuevo archivo ("Empleados.TXT");

Ahora hemos inicializado una variable de lector de archivos 'FR' que se utilizará para obtener el contenido de todo el archivo e inicialmente establecer el valor en NULL:

FileReader FR = NULL;

Después de eso, también hemos inicializado un lector búfer que se usará para leer el relleno por línea y establecer su valor también en NULL:

BufferedReader BR = NULL;

Es un paso obligatorio implementar el proceso de manejo de excepciones aquí, ya que a veces es posible que esté leyendo un archivo que sea enorme o en caso de que ocurra cualquier error, el programa se puede bloquear, lo que hace que un archivo sea corrupto que está tratando de leer. Entonces, para hacerlo, debe implementar el proceso 'prueba' y 'captura'. Dentro del cuerpo de prueba, debe leer el archivo para fines de seguridad como se muestra a continuación:

intentar

fr = nuevo Java.IO.FileReader (f);
Br = nuevo BufferedReader (FR);
mientras ((línea = Br.Readline ())!= nulo)

Sistema.afuera.println (línea);

BR.cerca();
fría.cerca();

Es realmente importante leer archivos línea por línea porque a veces el archivo tiene un tamaño enorme y no puede leer todo el archivo, ya que esto tendrá un gran impacto en el rendimiento de su sistema. Ahora la siguiente es la parte de captura que se ejecutará solo si se produce un error durante el proceso de lectura de archivos y su sintaxis es la siguiente.

Catch (ioException ex)
Sistema.errar.println ("Error mientras lee el archivo:"+ EX.getMessage ());

Ahora, aquí es donde le mostraremos todo el código que hemos explicado en los fragmentos en la parte anterior que se muestra a continuación:

importar java.IO.*;
importar java.utilizar.Escáner;
clase pública FileReaderLineByLine
public static void main (string [] args)
Sistema.afuera.println ("Lectura de archivo línea por línea usando el objeto BufferedReader \ n");
Sistema.afuera.println ("");
Archivo F = nuevo archivo ("Empleados.TXT");
Filereaderfr = null;
BufferedReaderBr = NULL;
intentar

Línea de cadena;
fr = nuevo Java.IO.FileReader (f);
Br = nuevo BufferedReader (FR);
mientras ((línea = Br.Readline ())!= nulo)

Sistema.afuera.println (línea);

BR.cerca();
fría.cerca();
//intentar
Catch (ioException ex)
Sistema.errar.println ("Error mientras lee el archivo:"+ EX.getMessage ());
//atrapar
//principal()
//clase

Si desea ejecutar este código Java en el sistema operativo Linux, puede hacerlo utilizando cualquier editor de texto de su elección. Por ejemplo, estamos usando un editor de texto nano, por lo que lo haremos escribiendo.

$ Nano FileReaderLineByLine.Java

El siguiente paso es escribir el código y luego guardarlo:

Ahora, para ejecutar este código, primero debe asegurarse de haber instalado la aplicación Java Development Kit (JDK) en su sistema operativo Linux escribiendo:

$ sudo apt instalación predeterminado-jdk

Después de eso, debe compilar primero el código antes de intentar ejecutar el programa.

$ Javac FileReaderLineByLine.Java
$ Java FileReaderLineByLine

Ahora puede ver que después de ejecutar el archivo está leyendo datos disponibles en el archivo de texto de "Empleados.TXT" que se muestra a continuación:

Nota: Debe abrir un terminal y luego acceder al mismo directorio donde este archivo de texto está presente, de lo contrario no podrá leer este archivo.

Leer archivos línea por línea usando la clase de escáner en Java

Hay un método más para leer archivos line por línea es mediante el uso de una clase de escáner en Java y para eso, debe escribir.

importar java.IO.Archivo;
importar java.IO.FileNotFoundException;
importar java.utilizar.Escáner;
clase pública readFilelineByline
public static void main (string [] args)
intentar
Escáner escáner = nuevo escáner (nuevo archivo ("empleados.TXT"));
mientras (escáner.HasNextLine ())
Sistema.afuera.println (escáner.Proxima linea());

escáner.cerca();
catch (FileNotFoundException e)
mi.printStackTrace ();


Conclusión

A veces, los archivos pueden ser de gran tamaño que contienen cientos y miles de líneas de información. En lugar de leer el archivo completo que tomará los recursos del sistema, podemos leerlos línea por línea usando el Listador buffered Clase en Java. En este artículo, le hemos enseñado cómo puede leer cualquier archivo utilizando un lenguaje de programación Java y, para eso, debe importar el proceso de manejo de archivos. También debe implementar el proceso de prueba y captura que se utiliza para manejar las excepciones del archivo en caso de cualquier error mientras lee un archivo que se ha discutido en este artículo.