c++ - 当我终止应用程序时无法保存写入文件的数据

标签 c++ file

我的程序总是将数据写入文件,但是当我在程序完全停止之前关闭它时,最终结果是没有任何内容写入文件。我真的很想能够在不完全完成它的情况下关闭它,那么我该如何解决这个问题以使其不断保存文件?

ofstream outfile;
outfile.open("text.txt", std::ios::app);
bool done = false;
int info;
  while (done == false){
    cin>>info;
    outfile<<info;
    cout<<info<<"Choose different info";
       if(info == 100){
         done = true;
       }
  }
outfile.close();

这显然只是一个示例,但它与我的实际代码非常相似。

编辑:当我说关闭时,我的意思是杀死它(点击控制台右上角的红色 X)

最佳答案

您可能需要 flush当你完成“足够”的工作时你的 std::ofstream。

此处“足够”的工作将取决于您的应用。

也许

...
outfile<<info;
outfile.flush();
...

关于c++ - 当我终止应用程序时无法保存写入文件的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27789314/

相关文章:

c++ - Qt for wasm : error: use of undeclared identifier 'QThreadPool'

c++ - DLL 导出 4 个 COM 函数但不导出 COM 对象?!我就是不明白!

c++ - 遗留设备上下文太粗糙

java - 试图在 java 中将证书添加到我的 post 方法

file - QML 无法打开文件对话框

c++ - 引用变量是否占用内存?

c++ - 在 gcc 中的内联汇编程序中出错

file - 用于将 stdout 和 stderr 通过管道传输到文件中的子例程

python - 使用 os.walk 读取文件

java - DataInputStream read() 总是返回 -1