有没有像Java中的Environment.Newline在Java中定义的Newline常量?
在C#中有根据运行平台改变的静态属性Environment.Newline 。
Java中有类似的东西吗?
System.getProperty("line.separator");
其他属性请参阅http://java.sun.com/docs/books/tutorial/essential/environment/sysprop.html 。
从Java 7开始:
System.lineSeparator()
Java API:System.lineSeparator
返回系统相关的行分隔符string。 它始终返回相同的值 – 系统属性line.separator的初始值。 在UNIX系统上,它返回“\ n”; 在Microsoft Windows系统上,它返回“\ r \ n”。
请注意,这个属性并不像许多人所想象的那样有用。 仅仅因为你的应用程序在Windows机器上运行,并不意味着它所读取的文件将使用Windows风格的行分隔符。 许多网页包含“\ n”和“\ r \ n”的混合物,从不同的来源拼凑而成。 当你将文本看作一系列逻辑行时,你应该总是查找所有三种主要的分隔符样式:Windows(“\ r \ n”),Unix / Linux / OSX(“\ n”)和pre-OSX Mac(“\ r”)。
当你写文本时,你应该更关心文件的使用方式,而不是你运行的平台。 例如,如果您希望人们在Windows记事本中读取文件,则应该使用“\ r \ n”,因为它只能识别一种分隔符。