使用fstream
界面写入文件时,我发现文件有时会损坏。我尝试使用file.good()
和file.bad()
来判断是否有异常要捕获,但是很遗憾,我没有捕获到任何异常。
因此,我尝试为其编写演示。在运行演示时,我删除了test.txt
。但是,我没有收到任何例外!
#include <iostream>
#include <fstream>
#include <string>
#include <errno.h>
int main() {
std::ofstream ofile("test.txt");
for (int i = 0; i < 10; ++i) {
ofile << i;
std::cout << i << ' ' << errno << ' ' << ofile.good() << std::endl;
sleep(1);
}
ofile.close();
return 0;
}