Force End-of-line delimiter as LF only Tag(s): IO
When running under the Windows, Java will use the CR-LF combination as the end-of-linedelimiter. To force the LF character as the end-of-line, you can set a System property
line.separator.
Note that this will affect the whole JVM.
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
public class LfOnlyDemo {
public static void main(String[] args) throws IOException {
LfOnlyDemo.demo();
}
public static void demo() throws IOException{
System.setProperty("line.separator", "\n");
FileOutputStream fos = new FileOutputStream("c:/temp/foo/lf.txt");
PrintWriter out = new PrintWriter(fos);
try {
out.println("**********");
out.println("* Real's *");
out.println("* HowTo *");
out.println("**********");
}
finally {
out.flush();
out.close();
}
}
}
Another way is to override the PrintWriter to force the use of LF-only as line delimiter.
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
public class LfOnlyDemo {
public static void main(String[] args) throws IOException {
LfOnlyDemo.demo();
}
public static void demo() throws IOException{
//
// the following will use LF as EOL character on all platforms
//
FileOutputStream fos = new FileOutputStream("c:/temp/foo/lf.txt");
// force EOL Unix-style LF-only
PrintWriter out1 = new PrintWriter(fos) {
@Override
public void println() {
write('\n');
}
};
try {
out1.println("**********");
out1.println("* Real's *");
out1.println("* HowTo *");
out1.println("**********");
}
finally {
out1.flush();
out1.close();
}
//
// on Windows, the following will use CRLF as EOL character
// on Linux/Unix, the following will use LF as EOL character
//
FileOutputStream fos2 = new FileOutputStream("c:/temp/foo/crlf.txt");
PrintWriter out2 = new PrintWriter(fos2);
try {
out2.println("**********");
out2.println("* Real's *");
out2.println("* HowTo *");
out2.println("**********");
}
finally {
out2.flush();
out2.close();
}
}
}
mail_outline
Send comment, question or suggestion to howto@rgagnon.com
Send comment, question or suggestion to howto@rgagnon.com