如何在Java中获得与平台相关的换行符?我无法在任何地方使用"\n"
。
答案 0 :(得分:660)
Java 7现在有System.lineSeparator()
方法。
答案 1 :(得分:642)
您可以使用
System.getProperty("line.separator");
获取行分隔符
答案 2 :(得分:352)
除了line.separator属性之外,如果您使用的是java 1.5或更高版本以及 String.format (或其他格式化方法),您可以使用{{ 1}}如
%n
有关详细信息,请参阅Java 1.8 API for Formatter。
答案 3 :(得分:43)
如果您尝试在文件中写入换行符,则只需使用BufferedWriter的newLine()方法即可。
答案 4 :(得分:29)
这也是可能的:String.format("%n")
。
或String.format("%n").intern()
保存一些字节。
答案 5 :(得分:22)
答案 6 :(得分:12)
如果使用BufferedWriter
实例写入文件,请使用该实例的newLine()
方法。它提供了一种独立于平台的方式来在文件中写入新行。
答案 7 :(得分:9)
StringBuilder newLine=new StringBuilder();
newLine.append("abc");
newline.append(System.getProperty("line.separator"));
newline.append("def");
String output=newline.toString();
上面的代码片段将有两个字符串,由新行分隔,与平台无关。
答案 8 :(得分:-2)
避免使用String + String等追加字符串,而是使用StringBuilder。
String separator = System.getProperty( "line.separator" );
StringBuilder lines = new StringBuilder( line1 );
lines.append( separator );
lines.append( line2 );
lines.append( separator );
String result = lines.toString( );