Avatar ·

Cómo guardar una cadena en un archivo de texto en Java: guía completa

¡Hola a todos! Acabo de empezar a aprender Java y me encontré con un problema: no puedo entender cómo guardar correctamente una cadena en un archivo de texto. He leído muchos artículos, pero todos sugieren diferentes formas y estoy confundido. Necesito que el programa lea algunos datos del usuario (por ejemplo, texto ingresado a través de Scanner) y luego los escriba en un archivo. Probé varias opciones, pero el código no funciona o el archivo se crea vacío. Aquí está uno de mis experimentos fallidos:
import java.io.*;

public class Test {
    public static void main(String[] args) {
        String text = "¡Hola, mundo!";
        File file = new File("output.txt");
        
        try {
            file.createNewFile();
            FileWriter writer = new FileWriter(file);
            writer.write(text);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
El archivo se crea, pero está vacío. Sospecho que necesito cerrar el writer o usar