换行引发的血案

   常见系统的换行符:

    windows -->   \r\n

    linux         -->   \r

    mac         -->   \n
  •  如果我们使用 BufferedWriter.newline() 函数换行,在本机测试的时候,因为是 windows 环境,换行符是 \r\n ,打开文件时候自然文件是换行处理,没有问题。
  •    部署到服务器时候,服务器是 linux 环境,newline 读取系统换行符是 \r ,导出到文件,文件的换行符是 \r,当我们把这个文件通过浏览器下载到 windows 时候,再打开文件将会出现没有换行的问题。因为 windows 下对于 \r 的解释并不是换行符。

so:   

如果需要指定文件在某些地方换行,不能使用 newline 方法。必须手动指定换行符:\r\n 因为按照上面列举的不同系统换行符看,如果字符串的末尾是  \r\n 在三个系统中,查看该文件,都会解释为换行。

猜你喜欢

转载自www.cnblogs.com/sjxbg/p/10445888.html
今日推荐