ZeilenendeZeichen dynamisch interpretieren \r\n vs \n

planb2000

Erfahrenes Mitglied
Hallo,

bestimmt könnt Ihr helfen. In meinem Programm habe ich das Zeichen "\n" als Zeilenendezeichen geschrieben.
Ich arbeite unter Windows XP und programmiere mit Netbeans 6.5
Leider wird das in der geschriebenen Datei als "0x0A" interpretiert und nicht als "0x0D0A".
Nun könnte ich hingehen und "\r\n" expliziet schreiben.
Gibt es nicht einen eleganten Weg der das dynamisch anhand des verwendeteten Betriebssystem herausfindet, und die Dateien werden entsprechend erzeugt?

Das Programm soll ja z.B. auch unter Unix funktionieren.

Vielen Dank für Hilfe.

PHP:
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class TestFileOut {
    public static void main(String[] args) throws IOException {
        //(System.getProperty(key);
         File outfile = new File ("d:/"+"foo"+".ktr");
                FileWriter fw = new FileWriter(outfile);
                BufferedWriter bw = new BufferedWriter(fw);
                bw.write("lala\n");
                bw.write("lulu\n");
                bw.write("haha\n");
                bw.close();
    }

}
 
Java:
public static final String LINE_SEPARATOR = System.getProperty("line.separator");

Das einmal in deinem Programm schreiben und dann immer wieder benutzen.
 
Zurück