检测文件中使用哪些换行符的可靠方法是什么?

时间:2010-04-23 09:11:44

标签: windows unix text encoding

我正在阅读文本文件,但我事先并不知道此文件中使用的行结尾类型。我需要知道它是使用UNIX \n还是Windows样式\r\n行结尾。

检测此问题的可靠且快速的方法是什么?

2 个答案:

答案 0 :(得分:1)

来自维基百科:

  

file命令也会检测类型   使用的EOL:

file myfile.txt
> > myfile.txt: ASCII text, with CRLF line terminators

来源:http://en.wikipedia.org/wiki/Newline#Common_problems

当然,file只适用于Unix系统。我相信其他人会为Windows回答一个。

答案 1 :(得分:1)

也许我错过了一个技巧,但你不能只是打开文件作为二进制文件并读取字节,直到看到'\n'为止?如果您之前看过'\r',那就是Windows。否则就是Unix。