我想打开一个文件,读取数据,然后在计算之后,写下我读过的数据,但我不想关闭它并重新打开它,因为这会减慢我的速度程序,因为它一遍又一遍地这样做,它确实减慢了它。 基本上,我有一个起始编号,然后我做一些计算并继续下一个数字。由于我不想重做所有这些计算,因此我有一个带有起始编号的文件和一个带有输出列表的文件。我想更改起始编号,以便我不必不必要地重做计算。如果您需要查看我的一些代码,请说明。谢谢你的家伙/女孩/其变种。 我使用的是c ++。
答案 0 :(得分:0)
我认为如果内存中有内容会更好,但无论如何你可以使用seekp将指针更改为文件中的实际位置
答案 1 :(得分:0)
我相信你想要实现的目标可以使用fstream来完成,语法非常类似于:
std::fstream file;
file.open ("textfile.txt", std::fstream::in | std::fstream::out | std::fstream::app);
以下是更好解释http://www.cplusplus.com/reference/fstream/fstream/open/
的链接答案 2 :(得分:0)
由于我已到达文件末尾,因此将设置eof标志。我需要清楚使用(ifile是本例中的fstream变量)ifile.clear
- 然后尝试寻求:
ifile.clear();
ifile.seekg(0, ios::beg);