不同的操作系统,换行符不统一。
windows -> /r/n
linux/unix -> /r
mac -> /n
本想着使用BufferedWriter中的newline()进行统一换行,其API解释为:“Writes a line separator. The line separator string is defined by the system property line.separator, and is not necessarily a single newline ('\n') character.”
会根据系统的换行符来换行,OK,满足我要求。但是有问题出现了:
如果我在Linux环境下写入换行(换行符:/r),那在windows下打开该.txt文件,则/r不会被解析为换行。
所以,我们在开发时候,如果需要指定文件在某些地方换行,则不能使用 newline 方法。必须手动指定换行符:\r\n 因为按照上面列举的不同系统换行符看,如果字符串的末尾是 \r\n 在三个系统中,查看该文件,都会解释为换行。








网友评论