Leer un archivo de texto en Java

Mohd Ebad Naqvi 12 octubre 2023
  1. Utilice la clase Scanner para leer archivos en Java
  2. Utilice la clase BufferedReader para leer archivos en Java
  3. Utilice la clase FileReader para leer archivos en Java
Leer un archivo de texto en Java

En casi todas las aplicaciones, nos ocupamos de la lectura y la escritura de texto, por lo que es esencial aprender sobre él. Existen varios métodos para leer un archivo de texto sin formato en Java.

En el tutorial, aprenderemos a leer un archivo de texto en Java.

Utilice la clase Scanner para leer archivos en Java

La clase Scanner puede leer archivos en Java. Primero, se crea un objeto Archivo que representa la ruta de su archivo requerido. El objeto de la clase Scanner se crea pasando el objeto File anterior.

La función hasNext() comprueba si existe otra línea en un archivo y la función nextLine() lee la línea dada.

Vea el código a continuación.

import java.io.File;
import java.util.Scanner;
public class ScannerClassDemo {
  public static void main(String[] args) throws Exception {
    File doc = new File("C:\\Drive\\Learn.txt");
    Scanner obj = new Scanner(doc);

    while (obj.hasNextLine()) System.out.println(obj.nextLine());
  }
}

Producción :

File Reading Example

Se lanza una excepción FileNotFound si el archivo dado no existe.

También podemos hacer esto creando el objeto de la clase InputStream y luego pasándolo a través de la clase Scanner.

Por ejemplo,

import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Scanner;
public class ScannerClassDemo {
  public static void main(String args[]) throws Exception {
    InputStream ins = new FileInputStream("C:\\Drive\\Learn.txt");
    Scanner obj = new Scanner(ins);
    while (obj.hasNextLine()) System.out.println(obj.nextLine());
  }
}

Producción :

File Reading Example

La ventaja de utilizar este método es que ofrece capacidad de análisis.

Utilice la clase BufferedReader para leer archivos en Java

BufferedReader lee el texto de un flujo de entrada basado en caracteres. El almacenamiento en búfer se realiza para la lectura eficiente de matrices, líneas y caracteres. Si no se especifica el tamaño del búfer, se usa el tamaño predeterminado, que es lo suficientemente grande para el uso. Podemos usarlo para leer archivos en Java.

BufferedReader proporciona una lectura rápida mediante el almacenamiento en búfer de datos.

En el siguiente ejemplo, leemos el texto de un archivo en una ruta especificada.

import java.io.*;
public class ReadingTextusingBufferedReader {
  public static void main(String[] args) throws Exception {
    File doc = new File("C:\\Drive\\Learn.txt");

    BufferedReader obj = new BufferedReader(new FileReader(doc));

    String strng;
    while ((strng = obj.readLine()) != null) System.out.println(strng);
  }
}

Producción :

File Reading Example

Utilice la clase FileReader para leer archivos en Java

La clase FileReader ofrece una forma conveniente de leer texto sin formato en Java. En esta clase, el método constructor toma el tamaño de búfer de bytes predeterminado y la codificación de caracteres predeterminada como más apropiado.

Podemos usarlo para leer archivos en Java, como se muestra a continuación.

import java.io.*;
public class ReadingTextFile {
  public static void main(String args[]) throws IOException {
    File doc = new File("Demo.txt");
    doc.createNewFile();
    FileReader freader = new FileReader(doc);
    char[] i = new char[100];
    freader.read(i);
    for (char j : i) System.out.print(j);
    freader.close();
  }
}

Producción :

File Reading Example

La función createNewFile() crea un nuevo archivo vacío. Después de la llamada a la función, si el archivo no existe, devolverá True y creará un archivo vacío con un nombre especificado.

Artículo relacionado - Java File