Programa Java para leer un archivo de texto grande línea por línea

Como estamos bien versados ​​en este tema, pongamos más énfasis para descubrir las diferencias mínimas entre ellos. Aquí se supone que debemos leer de un archivo en el directorio local donde está presente un archivo de texto, por ejemplo, ‘gfg.txt’. Deje que el contenido dentro del archivo sea como se muestra a continuación:

Geeks for Geeks.
A computer science portal.
Welcome to this portal.
Hello Geek !!!

Nota: asegúrese de que, antes de hacer cualquier cosa, primero cree un archivo en el repositorio del sistema para tratar con nuestro programa \ escribir un programa, ya que accederemos al mismo directorio a través de nuestros programas.

Métodos:

  1. Usando la clase de escáner
  2. Usando la clase BufferedReader

Método 1: Usando la clase Scanner

Scanner es una clase en el paquete java.util que se utiliza para obtener la entrada de los tipos primitivos como int, double, etc. y strings. Es la forma más fácil de leer la entrada en un programa Java, aunque no es muy eficiente si desea un método de entrada para escenarios donde el tiempo es una restricción como en la programación competitiva. La clase de escáner se utiliza para leer el archivo grande línea por línea. Un escáner divide su entrada en tokens, que por defecto coincide con el espacio en blanco. 

Ejemplo

Java

// Java Program to Read a Large Text File Line by Line
// Using Scanner class
 
// Importing required classes
import java.io.*;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.util.Scanner;
 
// Main class
public class GFG {
 
    // Main driver method
    public static void main(String[] args)
        throws FileNotFoundException
    {
 
        // Declaring and initializing the string with
        // custom path of a file
        String path = "C:\\Users\\HP\\Desktop\\gfg.txt";
 
        // Creating an instance of Inputstream
        InputStream is = new FileInputStream(path);
 
        // Try block to check for exceptions
        try (Scanner sc = new Scanner(
                 is, StandardCharsets.UTF_8.name())) {
 
            // It holds true till there is single element
            // left in the object with usage of hasNext()
            // method
            while (sc.hasNextLine()) {
 
                // Printing the content of file
                System.out.println(sc.nextLine());
            }
        }
    }
}

Producción: 

Geeks for Geeks.
A computer science portal.
Welcome to this portal.
Hello Geek !!!

Método 2: usar la clase BufferedReader

BufferedReader se utiliza para leer el archivo línea por línea. Básicamente , BufferedReader() se usa para el procesamiento de archivos grandes. BufferedReader es muy eficiente para leer. 

Nota: Especifique el tamaño de BufferReader o mantenga ese tamaño como tamaño predeterminado de BufferReader. El tamaño predeterminado de BufferReader es de 8 KB. 

Sintaxis:

BufferedReader in = new BufferedReader(Reader in, int size);

Ejemplo:

Java

// Java Program to Read a Large Text File Line by Line
// Using BufferedReader class
 
// Importing required classes
import java.io.*;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
 
// Main class
public class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
 
        // Declaring a string and initializing it with
        // path of file present on the system
        String path = "C:\\Users\\HP\\Desktop\\gfg.txt";
 
        // Try block to check for exceptions
        try (BufferedReader br
             = new BufferedReader(new FileReader(path))) {
 
            // Declaring a new string
            String str;
 
            // It holds true till threre is content in file
            while ((str = br.readLine()) != null) {
 
                // Printing the file data
                System.out.println(br);
            }
        }
 
        // Catch block to handle the exceptions
        catch (IOException e) {
 
            // Display pop up message if exceptionn occurs
            System.out.println(
                "Error while reading a file.");
        }
    }
}

Producción: 

Geeks for Geeks.
A computer science portal.
Welcome to this portal.
Hello Geek !!!

Publicación traducida automáticamente

Artículo escrito por manastole01 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *