Leer un archivo de texto en Java
-
Utilice la clase
Scanner
para leer archivos en Java -
Utilice la clase
BufferedReader
para leer archivos en Java -
Utilice la clase
FileReader
para leer archivos 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.