Pab*_*eco 8 c++ line-breaks ofstream
这是我的代码:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream ifile ("input.dat", ios::in);
ofstream ofile ("output.dat",ios::out);
int num;
ifile >> num;
ofile << num;
ofile << endl;
ofile << "Did we go to new line?";
ofile << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
问题是,output.dat中的所有内容都在同一行.我该如何解决这个问题?
谢谢!
编辑:我使用Windows来查看文件和Linux进行编译.这就是我遇到这个问题的原因.使用cat output.dat在Linux中看到文件的内容会发现,Windows与Linux的换行符是在不同的时间.
小智 6
更换std::endl用"\r\n"得到CRLF,而不是仅仅LF的.
std::endl 已经插入了换行符,因此文件中有换行符。我假设您在 LF 系统(Linux 或其他类似 UNIX 的系统)上生成文件并在 CRLF 系统上查看它。在这种情况下,您的换行符不会在文本编辑器中显示为换行符。unix2dos是你的朋友。
| 归档时间: |
|
| 查看次数: |
22015 次 |
| 最近记录: |