El manejo de archivos es una habilidad esencial en Java, fundamental para muchos proyectos que implican procesamiento de datos o configuraciones almacenadas externamente. Este artículo presenta una serie de ejercicios básicos orientados a principiantes para reforzar la comprensión y aplicación práctica del manejo de archivos en Java, proporcionando ejemplos claros y concisos que cubren operaciones básicas de lectura y escritura.
Ejercicio 1: Guardar Información en un Archivo de Texto
Objetivo: Aprender a escribir en archivos de texto de manera eficiente.
Descripción: Crea un programa que pida al usuario sus nombres favoritos y los guarde en un archivo de texto, cada nombre en una línea diferente.
Código de ejemplo:
import java.io.*;
import java.util.Scanner;
public class SaveFavoriteNames {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
try (BufferedWriter writer = new BufferedWriter(new FileWriter("favorite_names.txt"))) {
System.out.println("Ingrese nombres favoritos (escriba 'fin' para terminar):");
while (true) {
String name = scanner.nextLine();
if ("fin".equalsIgnoreCase(name)) {
break;
}
writer.write(name);
writer.newLine();
}
System.out.println("Nombres guardados en 'favorite_names.txt'");
} catch (IOException e) {
System.err.println("Error al escribir en el archivo: " + e.getMessage());
}
}
}
Ejercicio 2: Leer Contenido de un Archivo
Objetivo: Practicar la lectura de contenido desde un archivo de texto.
Descripción: Escribe un programa que lea un archivo que contiene una lista de nombres y los imprima en la consola, uno por línea.
Código de ejemplo:
import java.io.*;
public class ReadNames {
public static void main(String[] args) {
try (BufferedReader reader = new BufferedReader(new FileReader("favorite_names.txt"))) {
String name;
while ((name = reader.readLine()) != null) {
System.out.println(name);
}
} catch (IOException e) {
System.err.println("Error al leer el archivo: " + e.getMessage());
}
}
}
Ejercicio 3: Modificar y Reescribir un Archivo Existente
Objetivo: Aprender a modificar el contenido de un archivo existente y guardar los cambios.
Descripción: Desarrolla un programa que lea un archivo de texto, modifique alguna información específica (por ejemplo, cambiar todos los nombres “John” por “Jonathan”), y reescriba el archivo con los cambios.
Código de ejemplo:
import java.io.*;
import java.util.ArrayList;
import java.util.List;
public class ModifyNames {
public static void main(String[] args) {
List<String> modifiedLines = new ArrayList<>();
String filePath = "favorite_names.txt";
try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {
String line;
while ((line = reader.readLine()) != null) {
modifiedLines.add(line.replace("John", "Jonathan"));
}
} catch (IOException e) {
System.err.println("Error al leer el archivo: " + e.getMessage());
}
try (BufferedWriter writer = new BufferedWriter(new FileWriter(filePath))) {
for (String modifiedLine : modifiedLines) {
writer.write(modifiedLine);
writer.newLine();
}
System.out.println("Nombres modificados guardados en el mismo archivo.");
} catch (IOException e) {
System.err.println("Error al escribir en el archivo: " + e.getMessage());
}
}
}
Conclusión
Estos ejercicios introductorios permiten a los principiantes familiarizarse con la manipulación de archivos en Java, una competencia crucial para cualquier desarrollador que trabaje con datos o configuraciones externas. Al completar estos ejercicios, los programadores no solo mejorarán su capacidad técnica sino también su comprensión de cómo interactuar con sistemas de archivos, preparándolos para tareas más avanzadas y proyectos de desarrollo de software.
Contenido restringido
Comments are closed