是的,我知道可以'\n'
在UNIX 中写换行符,而对于Windows,则有两个字符序列:'\r\n'
。从理论上讲,所有这些都很好,但是我的问题是为什么?为什么在Windows中回车符是多余的?如果UNIX可以做到这一点,\n
为什么Windows则需要两个字符来完成呢?
我正在阅读David Beazley的Python书,他说:
例如,在Windows上,写入字符'\ n'实际上会输出两个字符的序列'\ r \ n'(并且在读回文件时,'\ r \ n'被转换回单个'\ n'字符)。
为什么要付出额外的努力?
我会说实话。我很早就知道它们之间的区别了,但是从来没有问过为什么。我希望今天能回答。
谢谢你的时间。
System.out.printf()
或String.format()
)时,请确保%n
出于操作系统兼容的目的将其用作CRLF。\n
不推荐使用。
\n\r
几次了。(我认为这是NetWare提供的东西。)
\r\n
。大多数基于文本的Internet协议(例如SMTP,HTTP等)也使用它,其原因与Windows(即历史记录)大致相同。