Eine Datei mit mehreren Zeilen beschreiben

Roobiks

Mitglied
Hallo

Ich habe eine mail, dessen Inhalt (via JTextArea) folgendermassen aussieht:
Hallo
Welt

Wenn ich das mail im GUI abschicke (ich wende JavaMail API an) erhalte ich auch:
Hallo
Welt

Möchte ich nach dem Abschicken den Inhalt in eine neue Datei schreiben ( writer.write(data3), wobei data3 Hallo Welt beinhaltet) schreibt mir Java alles auf einer Linie ohne Abstand.
Wie kann ich die Datei so beschreiben, wie ich es in das JTextArea Feld eingegeben habe?
 
Vielleicht besteht der Zeilenumbruch nur aus "\n". Dein Texteditor erwartet aber "\r\n".
Das könnte man korrigieren mit
Java:
data3 = data3.replaceAll("\\n","\r\n");

Da Du dich aber nicht darauf verlassen kannst, dass die Zeilenumbrüche immer aus "\n" bestehen, ist es besser das in 3 Schritten zu machen.

Java:
data3 = data3.replaceAll("\\r\\n","\n");
data3 = data3.replaceAll("\\r","\n");
data3 = data3.replaceAll("\\n","\r\n");

Das sollte sämtliche Zeilenumbrüche normalisieren.
 
Code:
static String content ="";
FileReader file5 = new FileReader(test.txt");
                BufferedReader reader5 = new BufferedReader(file5);
             
                for(int i=1;i<=2;i++){
                    reader5.readLine(); //skip the first two lines
                }

                while ((line = reader5.readLine()) != null) {
            
                    content += line;
                }
                reader5.close();

                System.out.print(content);

content gibt mir hier wieder HalloWelt. Habe deine Zeilen bei content und line angewendet, leider
ohne Erfolg.
 
Logisch, da du ja immer nur eine Zeile einliest und an die alte dran hängst. Wenn du dazwischen einen Zeilenumbruch haben willst, dann must du ihn selber reinmachen.
 

Neue Themen


Zurück
Oben