以下C ++代码:
ofstream out("File.txt");
const char *str = "0\r\n1\r\n2\r\n";
out << str;
创建以下文件(上面的File.txt):
为什么还有额外的CR&LF?&?我的平台是Windows 7和编译器VS 2013。
上述情况会导致我的另一个程序出现问题,该程序将逐行解析此文件,并且该程序假定每行都包含数据。我可以删除空行,但我想了解为什么在保存str
时会有额外的CR和LF&#39>。
答案 0 :(得分:3)
\n
输出特定于平台的换行符,在这种情况下,每个\n
都会写为\r\n
。您无需手动添加自己的\r
,这是复制的来源。