💾 EJERCICIO #4 — Persistencia y
Excepciones en Java
Leer ficheros, procesar datos y escribir resultados sin que el programa explote. Aquí
caen muchos porque mezclan I/O + parsing + excepciones sin control.
Un programador no “espera que funcione”: blinda el código.
📐 DIAGRAMA DE FLUJO (ASCII)
Así piensa el programa :
┌──────────────┐
│ Abrir fichero│
└──────┬───────┘
│
┌──────▼───────┐
│ Leer línea │
└──────┬───────┘
│
┌──────▼───────┐
│ Separar datos│
└──────┬───────┘
│
┌──────▼───────┐
│ Convertir nota
└──────┬───────┘
│
┌──────▼───────┐
│ ¿Error? │──────► catch
└──────┬───────┘
│
┌──────▼───────┐
│ Acumular suma│
└──────┬───────┘
│
┌──────▼───────┐
│ Calcular media
└──────┬───────┘
│
, ┌──────▼───────┐
│ Escribir fichero
└──────┬───────┘
│
┌──────▼───────┐
│ Cerrar recursos
└──────────────┘
👉 Si no controlas los “¿Error?”, el programa muere.
🧠 ESCENARIO DE EXAMEN
Archivo notas.txt con formato:
Ana,7
Luis,5
Marta,8
Carlos,X
Pepe,6
👉 Hay una línea mala ( X ).
👉 El programa NO debe explotar.
👉 Debe avisar y seguir.
✅ CÓDIGO COMPLETO (LISTO PARA
PEGAR)
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
Excepciones en Java
Leer ficheros, procesar datos y escribir resultados sin que el programa explote. Aquí
caen muchos porque mezclan I/O + parsing + excepciones sin control.
Un programador no “espera que funcione”: blinda el código.
📐 DIAGRAMA DE FLUJO (ASCII)
Así piensa el programa :
┌──────────────┐
│ Abrir fichero│
└──────┬───────┘
│
┌──────▼───────┐
│ Leer línea │
└──────┬───────┘
│
┌──────▼───────┐
│ Separar datos│
└──────┬───────┘
│
┌──────▼───────┐
│ Convertir nota
└──────┬───────┘
│
┌──────▼───────┐
│ ¿Error? │──────► catch
└──────┬───────┘
│
┌──────▼───────┐
│ Acumular suma│
└──────┬───────┘
│
┌──────▼───────┐
│ Calcular media
└──────┬───────┘
│
, ┌──────▼───────┐
│ Escribir fichero
└──────┬───────┘
│
┌──────▼───────┐
│ Cerrar recursos
└──────────────┘
👉 Si no controlas los “¿Error?”, el programa muere.
🧠 ESCENARIO DE EXAMEN
Archivo notas.txt con formato:
Ana,7
Luis,5
Marta,8
Carlos,X
Pepe,6
👉 Hay una línea mala ( X ).
👉 El programa NO debe explotar.
👉 Debe avisar y seguir.
✅ CÓDIGO COMPLETO (LISTO PARA
PEGAR)
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;