Aprende Java fácil. Ejercicios tema 14

Ejercicios tema 14 – Leer y escribir archivos de texto en Java

Ejercicios tema 14

Ejercicio 1. Escribe un programa que guarde la frase Hola Mundo en un archivo llamado salida.txt.

SoluciF3n:

import java.io.FileWriter;
import java.io.IOException;

public class Main {

    public static void main(String[] args) {

        try (FileWriter writer = new FileWriter("salida.txt")) {
            writer.write("Hola Mundo");
            System.out.println("Texto escrito en salida.txt");
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

Ejercicio 2. Escribe un programa que lea el contenido de el archivo llamado salida.txt y lo muestre en la consola.

SoluciF3n:

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

public class Main {

    public static void main(String[] args) {

        try (BufferedReader reader = new BufferedReader(new FileReader("salida.txt"))) {
            String line;

            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }

        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

Ejercicio 3. Escribe un programa que copie el contenido de salida.txt a destino.txt

SoluciF3n:

import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class Main {

    public static void main(String[] args) {

        try (FileReader reader = new FileReader("salida.txt");
             FileWriter writer = new FileWriter("destino.txt")) {

            int c;

            while ((c = reader.read()) != -1) {
                writer.write(c);
            }

            System.out.println("Contenido copiado de salida.txt a destino.txt");

        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

Ejercicio 4. Escribe un programa que cuente el nFAmero de palabras del archivo llamado destino.txt

SoluciF3n:

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

public class Main {

    public static void main(String[] args) {
        int wordCount = 0;

        try (BufferedReader reader = new BufferedReader(new FileReader("destino.txt"))) {

            String line;

            while ((line = reader.readLine()) != null) {
                String[] words = line.split("\\s+");
                wordCount += words.length;
            }

            System.out.println("NFAmero de palabras en destino.txt: " + wordCount);

        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

Ejercicio 5. Escribe un programa que guarde los nFAmeros del 1 al 10 en un archivo llamado numeros.txt, con cada nFAmero en una lEDnea.

SoluciF3n:

import java.io.FileWriter;
import java.io.IOException;

public class Main {

    public static void main(String[] args) {

        try (FileWriter writer = new FileWriter("numeros.txt")) {
            for (int i = 1; i <= 10; i++) {
                writer.write(i + "\n");
            }

            System.out.println("NFAmeros escritos en numeros.txt");

        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

Ejercicio 6. Escribe un programa que lea nFAmeros enteros de un archivo llamado numeros.txt y calcule la suma de estos nFAmeros.

SoluciF3n:

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

public class Main {

    public static void main(String[] args) {
        int sum = 0;

        try (BufferedReader reader = new BufferedReader(new FileReader("numeros.txt"))) {

            String line;

            while ((line = reader.readLine()) != null) {
                sum += Integer.parseInt(line);
            }

            System.out.println("Suma de los nFAmeros en numeros.txt: " + sum);

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Ejercicio 7. Escribe un programa que aF1ada la frase Fin del archivo al final de un archivo llamado log.txt.

SoluciF3n:

import java.io.FileWriter;
import java.io.IOException;

public class Main {

    public static void main(String[] args) {

        try (FileWriter writer = new FileWriter("log.txt", true)) {
            writer.write("Fin del archivo\n");
            System.out.println("Texto aF1adido a log.txt");
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

Ejercicio 8. Escribe un programa que lea el contenido del archivo nFAmeros.txt y lo muestre en la consola cada valor multiplicado por 10.

SoluciF3n:

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

public class Main {

    public static void main(String[] args) {

        String archivo = "numeros.txt"; // Archivo que contiene los nFAmeros

        try (BufferedReader br = new BufferedReader(new FileReader(archivo))) {

            String linea;

            while ((linea = br.readLine()) != null) {
                int numero = Integer.parseInt(linea); // Convierte la lEDnea en un nFAmero
                int resultado = numero * 10; // Multiplica el nFAmero por 10
                System.out.println(resultado); // Muestra el resultado
            }

        } catch (IOException e) {
            e.printStackTrace();
        } catch (NumberFormatException e) {
            System.out.println("El archivo contiene datos no numE9ricos.");
        }

    }
}

Ejercicio 9. Escribe un programa que escriba los bytes del 0 al 255 en un archivo llamado output.bin.

SoluciF3n:

import java.io.FileOutputStream;
import java.io.IOException;

public class Main {

    public static void main(String[] args) {

        try (FileOutputStream fos = new FileOutputStream("output.bin")) {
            for (int i = 0; i <= 255; i++) {
                fos.write(i);
            }

            System.out.println("Bytes escritos en output.bin");

        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

Ejercicio 10. Escribe un programa que escriba en un fichero los datos de un trabajador, Nombre, Edad Y Cargo. DespuE9s el programa leerE1 esos datos y los mostrarE1 por pantalla.

SoluciF3n:

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

public class Main {

    public static void main(String[] args) {

        String archivo = "trabajador.txt"; // Nombre del archivo

        // Escribir los datos del trabajador en el archivo
        try (FileWriter fw = new FileWriter(archivo)) {
            fw.write("Nombre: Juan Perez\n");
            fw.write("Edad: 35\n");
            fw.write("Cargo: Ingeniero de Software\n");
        } catch (IOException e) {
            e.printStackTrace();
        }

        // Leer los datos del archivo y mostrarlos en pantalla
        try (BufferedReader br = new BufferedReader(new FileReader(archivo))) {
            String linea;
            while ((linea = br.readLine()) != null) {
                System.out.println(linea); // Mostrar cada lEDnea en pantalla
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

¿Te gustó? Pues no te lo guardes, ¡compártelo como si fuera un chisme! 😏