Resumen: leer el contenido de un archivo con java, línea a línea, usando las clases:

  1. FileReader
  2. BufferedReader
  3. IOException
  4. StringBuilder

Vamos a leer un archivo de texto con Java, línea a línea, poniendo cada línea en un StringBuilder.

Nota: mira mi otro post para saber cómo escribir en un archivo de texto con Java.

Leer archivo de texto con Java

Para leer el contenido creamos un FileReader indicando el nombre del archivo.

Después, creamos un BufferedReader pasando el FileReader creado anteriormente.

Cuando tenemos una instancia de BufferedReader podemos llamar al método nextLine que devuelve la siguiente línea de texto del archivo.

Con la línea podemos trabajar, o ir concatenándola. Yo usaré un StringBuilder con su método append.

import java.io.FileReader;
import java.io.BufferedReader;
import java.io.IOException;

/*
	Leer el contenido de un archivo con Java
	https://parzibyte.me/blog/
*/
class Main {
	public static void main(String[] args) {
		String nombreArchivo = "ejemplo.txt";
		FileReader fileReader = null;
		BufferedReader bufferedReader = null;
		try {
			fileReader = new FileReader(nombreArchivo);
			bufferedReader = new BufferedReader(fileReader);
			StringBuilder stringBuilder = new StringBuilder("");
			String linea;
			while ((linea = bufferedReader.readLine()) != null) {
				// Lee línea por línea, omitiendo los saltos de línea
				stringBuilder.append(linea + "\n");
			}

			System.out.println("Contenido: " + stringBuilder.toString());

		} catch (IOException e) {
			System.out.println("Excepción leyendo archivo: " + e.getMessage());
		} finally {
			try {
				if (fileReader != null)
					fileReader.close();
				if (bufferedReader != null)
					bufferedReader.close();
			} catch (IOException e) {
				System.out.println("Excepción cerrando: " + e.getMessage());
			}
		}
	}
}
Hola mundo
Soy el contenido del archivo
Programando en Java desde parzibyte.me

Todo esto puede generar una IOException, por eso es que se atrapa en el catch del try.

Al finalizar la operación, haya sido exitosa o no, hay que cerrar el FileReader y el BufferedReader que, irónicamente, también pueden generar una IOException. Comprobamos si son distintos de null para evitar una NullPointerException.

Sé que con versiones nuevas de Java esto es más corto, pero quería poner una versión que funcione con todas las versiones de Java.

Si el post ha sido de tu agrado te invito a que me sigas para saber cuando haya escrito un nuevo post, haya actualizado algún sistema o publicado un nuevo software. Facebook | X | Instagram | Telegram | También estoy a tus órdenes para cualquier contratación en mi página de contacto