我们都看过这样的事情:如果我们被告知使用系统属性line.separator而不是硬编码 n,为什么我的代码在Windows上工作?
使用System.getProperty(String)方法指的是 依赖于系统上的项目,如行终止和路径分隔符。
该帖从这个web site.
复制我硬编码的\n
,和下面的代码工作在我的Windows机器上如预期。
package sample;
public class Main {
public static void main(String[] args) {
System.out.println("hello\nworld");
};
}
输出是:
hello
world
我认为Java编译器所取代\n
与\r\n
默默。于是我下载了JD GUI,打开了JAR文件,并看到了Hello\nworld
。有谁能给我一个例子,\n
不起作用,System.getProperty("line.separator")
呢?
用Std将您的Sting写入文件,用记事本打开它你会看到问题是什么 – Jens
@Jens,你是对的。它看起来像命令提示符替换正确的行尾,而记事本不会。所以,如果你将你的评论转换为答案,我会接受它 –