newLine()和回车符("\ r")之间的区别

Man*_*anu 3 java

newLine()和回车("\ r")之间有什么区别?哪一个最好用?

File f = new File(strFileGenLoc);
BufferedWriter bw = new BufferedWriter(new FileWriter(f, false));
rs = stmt.executeQuery("select * from jpdata");
while ( rs.next() ) 
{
    bw.write(rs.getString(1)==null? "":rs.getString(1));
    bw.newLine();
}
Run Code Online (Sandbox Code Playgroud)

Rob*_*ett 14

假设你是这个意思:

public static String newLine = System.getProperty("line.separator");
Run Code Online (Sandbox Code Playgroud)

newLine是环境不可知\r的.

所以newLine\r\n在Windows \n上给你,但在另一个环境.

但是,你不应该在JTextArea中使用它,println只能\n在windows上正常工作.

现在编辑,我已经看到了代码和你的评论

在你的情况下.我认为你应该使用自己的常数 - \r\n

  File f = new File(strFileGenLoc);
  BufferedWriter bw = new BufferedWriter(new FileWriter(f, false));
  rs = stmt.executeQuery("select * from jpdata");
  while ( rs.next() ) {
    bw.write(rs.getString(1)==null? "":rs.getString(1));
    bw.write("\\r\\n");
  }
Run Code Online (Sandbox Code Playgroud)


use*_*421 9

在过去的ASR-33电传手机(以及后来的带有行走打印头的点阵打印机)中,CR确实将滑架返回到左侧,就像打字机一样,LF推进了纸张.如果CR出现在LF之前,机器可能会重叠操作,这就是为什么换行符始终是CR-LF,即\ r \n.如果你把它拿回来,打印需要更长的时间.Unix是第一个(仅?)系统,只采用\n作为标准行分隔符.DOS/Windows没有.