问答中心分类: JAVA如何获得依赖于平台的新行角色?
0
匿名用户 提问 1月 前

如何在Java中获得依赖于平台的换行符?我不能使用"\n"处处

7 Answers
0
StriplingWarrior 回答 1月 前

Java 7现在有System.lineSeparator()方法

Kon 回复 1月 前

如果他们能提供一个重载方法,那就太好了lineSeperator(int)它返回一些行分隔符,因为我经常发现自己一次使用2。

Samuel Harmer 回复 1月 前

@Kon基于这个答案:String.join("", Collections.nCopies(5, System.lineSeparator()))

Jacob G. 回复 1月 前

使用Java 11:System.lineSeparator().repeat(5)

Andrew T Finnell 回复 1月 前

@JacobG别得意了。。我们中的一些人仍然停留在Java 7上。

Aubergine 回复 1月 前

@AndrewTFinnell我会找到一份更好的工作没有Java 11,所以你留下来是为了更好的薪水,我们可以幸灾乐祸:-D

0
abahgat 回答 1月 前

您可以使用

System.getProperty("line.separator");

获取行分隔符

Gray 回复 1月 前

注意添加Java 7System.lineSeparator()那么这里是这个问题的最终答案?

0
Michael Myers 回答 1月 前

如果您试图向文件写入换行符,只需使用BufferedWriter的换行符()方法

0
ceving 回答 1月 前

这也是可能的:String.format("%n").
String.format("%n").intern()保存一些字节。

Spoike 回复 1月 前

这与Alex B的答案相同。

ceving 回复 1月 前

哦,现在我明白了。他在答案周围写了很多未经询问的东西

mr5 回复 1月 前

我尝试过这样做,但当我在记事本中查看文件时,它无法识别换行符。

ceving 回复 1月 前

@mr5notepad不是查看文件内容的正确工具。使用hexdumpod.

mr5 回复 1月 前

@ceving我在Windows环境中,我希望新品将\r\n

0
lexicalscope 回答 1月 前

这个通用语言库有一个常量字段可用,名为SystemUtils。LINE\u分隔符

Shervin Asgari 回复 1月 前

是的,安装第三方库只是为了获得独立于平台的新品#脸掌

lexicalscope 回复 1月 前

@Shervin当然你不会这么做,但我参与的许多项目已经在使用commons lang和一些旧版本的Java。因此,如果您碰巧已经在使用commons lang,那么这是一个明智的答案。我觉得没有必要指出这一点,我显然错了。

Alexis Leclerc 回复 1月 前

对于已经使用此库的项目,这确实是一个很好的建议,谢谢!