这是我的主要功能:
void main()
{
Student s1 = Student(12, "Ali");
Student s2 = Student(1, "Hassan");
Student s3 = Student(8, "Bilal");
s1.WriteFile();
s2.WriteFile();
s3.WriteFile();
}
而WriteFile()函数是:
void WriteFile()
{
fstream fileWriter, fileReader;
string string_line;
fileWriter.open("D:\A111.txt");
while (!std::getline(fileReader, string_line).eof())
{
}
cout << GetRoll_No() << " , " << GetName() << endl;
fileWriter << GetRoll_No() << " , " << GetName() << endl;
fileWriter.close();
fileReader.close();
}
每当我打电话给它时,它只会显示我在A111.txt中的跟随
8,Bilal那么为什么它不会在现有文件的末尾附加它。请注意,文件阅读器仅在稍后尝试解决方案时添加,它在没有eof()的情况下也会出现相同的错误
答案 0 :(得分:1)
如果要追加:{/ p>,则应使用open
方法
fs.open ("test.txt", std::fstream::out | std::fstream::app);
请注意:std::fstream::app
答案 1 :(得分:1)
你忘了将mode参数传递给open()函数。你走在正确的轨道上,只需做一点改变:
fileWriter.open("D:\A111.txt",ios::app);