【发布时间】:2023-03-30 19:59:01
【问题描述】:
我正在使用 Visual Studio 2017 练习 C++,我在 TurboC++ 上有过一些 C++ 的经验。 尝试创建一个从文件读取和写入的程序,当我在打开文件时使用“ios::Ate”时遇到问题。
file.open("text.txt", ios::ate);
我的代码如下。
#include "pch.h"
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
fstream file;
file.open("text.txt", ios::ate);
char a;
while(1){
cin.get(a);
if (a != '0')
file << a;
else break;
}
file.close();
}
当我运行这个程序时,它运行没有错误,但是当我打开文件时它是空的。
我尝试使用 ios::out 并且效果很好,但我不想每次写入文件时都截断文件。
【问题讨论】:
-
尝试
ofstream而不是fstream。还要检查你的操作是否成功。 -
@NathanOliver 这是另一个问题coliru.stacked-crooked.com/a/256cacac707b9397
-
另外,请确保您不要发布文本文件的截图,更不要发布 empty 文本文件的截图。
标签: c++ file-handling