CR后跟LF

时间:2011-08-05 05:38:25

标签: carriage-return linefeed

我读过一些关于回车(CR)和换行(LF)之间差异的文章。据我所知,生成新行时它们是相同的。但是当我把它们放在一起时就像\ r \ n一样,换行只发生一次。当我改变那些顺序像\ n \ r或在它们之间插入一些东西,如\ rblablabla \ n时,行的变化发生两次。谁能告诉我为什么?这是因为我的Windows操作系统看到CR后面紧跟一个LF作为单个转义字符吗?

2 个答案:

答案 0 :(得分:1)

CR和LF只是字符。另一个概念发挥作用:newlines,计算系统中用于定义新行开始时的约定。一些主要选择只是一个LF,就像在Unix中一样;只是CR,就像MacOS一样(OS X之前);和CRLF,在MSDOS和后来的Windows中。

有用的工具通常可以容忍并接受除OS标准之外的其他形式。您可以在编程语言(例如Python)和许多文本编辑器中看到这一点。所以正在发生的事情是你使用的工具不仅支持CRLF作为换行符。由于LFCR与CRLF不同,因此将其视为两个换行符。我不认为这是在Windows的水平,而是具体的应用程序;例如,记事本无法以任何有用的方式使用LF显示文件。

答案 1 :(得分:0)

我认为,Windows识别CR,LF和CRLF,但不识别LFCR,因此它被解释(缺少更好的词)作为LF,然后CR,导致两个终点线。有人评论并纠正我,如果我错了,只是冒险猜测