【发布时间】:2011-09-26 06:09:53
【问题描述】:
我只是不记得那些了。那么,正确终止老式 ASCII 行的正确方法是什么?
【问题讨论】:
-
如果您这样做,请确保您以二进制模式打开文件。否则,标准 C/C++ 文件流会将“\n”(对于文本文件(默认))转换为特定于平台的行尾序列 (ELS)。因此,Windows 上的“\r\n”将转换为物理磁盘上的“\r\r\n”。注意:如果你只是使用 C/C++ 来读回文件,你不会注意到从文件中读取时 ELS 被转换回“\n”。
-
@Martin - 我在.net中,并且正在使用(对于这个例子)File.AppendAllText,带有“\r\n”,我只是查看了一个文件,并且有行尾没有 \r 重复。魔法?
-
@Daniel:我应该更具体一些。 C/C++ 流。当与文件关联并以文本模式打开时。它还取决于您如何查看文件(使用十六进制编辑器)。
-
@Martin - 以十六进制模式使用 PSPad...
-
在古代键盘上,Enter 键被称为 Return 键。所以先返回,然后生成换行作为响应。当你有太多的历史时,这一切都很明显。