【发布时间】:2014-05-28 03:54:37
【问题描述】:
我在将ifstream read 和ofstream print 关联到名为finances.txt 的预制文本文件时遇到问题。这是在一个名为Data 的类中。到目前为止,这是我尝试过的:
我在类头文件中声明了ifstream read 和ofstream print。然后,在cpp文件中:
Data::Data(string n, string d)
:name(n),
date(d)
read(name)
print(name)
{
cout << "name = " << name << endl;
read.open(name);
print.open(name);
//...
}
我也试过了,没有在标题中声明任何内容:
Data::Data(string n, string d)
:name(n),
date(d)
{
ifstream read(name);
ofstream print(name);
//...
而且只是这种东西的不同变体。语法总是正确的,因为我没有收到任何错误,但是每当它运行时,它就像文件不存在并创建一个名为 finances.txt 的新文件,这反过来又会删除所有文本是在原来的。我以前正确地做到了这一点,只是不记得我做了什么以及我在这里做错了什么。
【问题讨论】:
-
您需要打开文件进行追加...搜索该文件,您将找到追加到
ofstream构造函数的必要选项。 -
同时打开一个文件以在两个不同的 fstream 上读取和写入有点冒险。我不确定这里会发生什么,这可能取决于您的操作系统。
标签: c++ fstream ifstream ofstream