Tarea 9: Escritura de Ficheros de Texto con BufferedWriter
Explicación del Ejercicio
En esta tarea se escribe la tabla de multiplicar del 7 en un fichero de texto, una operación por línea, mediante la clase BufferedWriter. Esta clase añade un buffer intermedio al FileWriter y evita acceder al disco en cada escritura.
Conceptos y métodos clave:
-
Buffer de escritura (
BufferedWriter): Envuelve alFileWriter: los datos se acumulan en memoria y se escriben en bloque, lo que resulta más eficiente que escribir carácter a carácter. -
Salto de línea (
newLine()): Inserta el separador de línea propio del sistema operativo (\r\nen Windows), por lo que es preferible a escribir"\n"a mano. -
Recorrido con
for: Un bucle de 1 a 10 construye cada fila concatenando el factor y el resultado (7 * i). -
Gestión automática de recursos (
try-with-resources): Al cerrar el flujo se vacía el buffer, de modo que ninguna línea se pierde.
Código Fuente y Salida
Clase8.java
package ClaseFile;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
/**
* @author Eva Gallardo Romero
* @date 24 de sep de 2026
* Escribir en el fichero "tabla7.txt" la tabla de multiplicar del 7
* utilizando BufferedWriter. Cada operación debe ir en una línea
* distinta, por lo que hay que usar el método newLine().
*/
public class Clase8 {
public static void main(String[] args) {
// objeto File del fichero que voy a escribir
File fichero = new File("tabla7.txt");
// el BufferedWriter envuelve al FileWriter para escribir con buffer
try (BufferedWriter bw = new BufferedWriter(new FileWriter(fichero))) {
// escribo las 10 filas de la tabla, una por línea
for (int i = 1; i <= 10; i++) {
bw.write("7 x " + i + " = " + (7 * i));
bw.newLine();
}
System.out.println("Se ha escrito la tabla del 7 en " + fichero.getName());
} catch (IOException e) {
System.out.println("Error de E/S: " + e.getMessage());
}
}
}
Resultado Mostrado por Terminal
Salida de Consola
Se ha escrito la tabla del 7 en tabla7.txt