crear un archivo de texto en java

Tengo un problema con la creación de un archivo de texto con el nombre que quiero.

Quiero crear un archivo de texto llamado: 'nombre de usuario' Sujetos.

 private void saveSubjects(){

    RegisterFrame r = new RegisterFrame();


    String username = r.txtUser.getText();;

    try{
        FileWriter f = new FileWriter(username + "" + "Subjects" + ".txt", true);

        String subjects[] = lstSubjects.getItems();

        for(int i = 0; i<subjects.length; i++){
            f.write(subjects[i] + "\r\n");
        }
        f.close();
        JOptionPane.showMessageDialog(null, "Data saved!", "Data Saved", JOptionPane.INFORMATION_MESSAGE);
    }catch(Exception e){
        JOptionPane.showMessageDialog(null, "Nothing Inputted!", "Error", JOptionPane.ERROR_MESSAGE);
    }

}

Quiero obtener el nombre de usuario de RegisterFrame ya que se ingresa allí pero no funciona. Sé que es algo simple, pero todavía soy un principiante en esto. ¿Como puedo resolver esto?

Gracias por adelantado

Respuesta 1

prueba esto:

String username = r.txtUser.getText();
System.out.println("The loaded username is: " + username);

entonces verá dónde está su problema: escribir en el archivo u obtener el texto del nombre de usuario.

Si el problema está en obtener el texto, considere otra forma de obtenerlo o modifique la pregunta eliminando la parte de escritura del archivo y especificando el nombre de usuario que recibe la parte.

De lo contrario, IDK donde está el error.

Por cierto: ¿cómo no funciona? el archivo no se crea en absoluto? ves algun error? el archivo tiene un nombre incorrecto? Por favor especifica

Respuesta: 2

Your code for writing the file seems to be fine. Based on your code I tried this which worked perfectly:

public static void main(String[] args) {

    FileWriter f = null;
    try {
        f = new FileWriter("Subjects.txt", true);

        String subjects[] = {"subject1", "subject2"};

        for (String subject : subjects) {
            f.write(subject + "\r\n");
        }

    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        IOUtils.closeQuietly(f);
    }
}

I'd say your problem is elsewhere.

Please note that best practice dictates that Closeable objects such as FileWriter should be closed in a finally block

Answer:3

Estoy tratando de hacer lo siguiente ... Tengo una lista de cadenas en el siguiente modo: John, Peter, Carl Rose, Joanne, Natalie En este momento estoy leyendo línea por línea y produciendo una secuencia ... Como esta : ...

Estoy haciendo un sistema de pedidos con patrones de diseño de integración para una tarea escolar. Un cliente puede realizar un pedido y el intermediario que transmite una solicitud de suministro a todos los proveedores (más de 100), que ...

Los datos se cifran con OpenSSL en PHP y me gustaría descifrar Java, pero obtengo un error en Java Code for Encryption en PHP, función pública getEncryptedString ($ cardNumber, $ key_id) {$ ...

Quiero agregar los datos a una lista basada en el valor clave de otra lista. Aquí auditMap tiene claves att_12, att_11 y oldValues ​​tiene claves att_11, att_12, quiero que el orden de oldValues ​​aparezca en el mismo ...