Aprende Java fácil. Ejercicios tema 14

Ejercicios tema 14

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

Solución:

 

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.

Solución:

 

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

Solución:

 

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 número de palabras del archivo llamado destino.txt

Solución:

 

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("Número de palabras en destino.txt: " + wordCount);

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

    }
}

Ejercicio 5. Escribe un programa que guarde los números del 1 al 10 en un archivo llamado numeros.txt, con cada número en una línea.

Solución:

 

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("Números escritos en numeros.txt");

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

    }
}

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

Solución:

 

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 números en numeros.txt: " + sum);

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

Ejercicio 7. Escribe un programa que añada la frase ‘Fin del archivo’ al final de un archivo llamado log.txt.

Solución:

 

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 añadido a log.txt");
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

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

Solución:

 

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 números

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

            String linea;

            while ((linea = br.readLine()) != null) {
                int numero = Integer.parseInt(linea); // Convierte la línea en un número
                int resultado = numero * 10; // Multiplica el número 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 numéricos.");
        }

    }
}

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

Solución:

 

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. Después el programa leerá esos datos y los mostrará por pantalla.

Solución:

 

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 línea en pantalla
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}