Leer archivos con Java

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.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

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