我目前正在尝试操作文本文件的文本内容(不使用向量):
(这是工程论文作业,我不被允许使用向量)
变量numRows可以是任何整数(我选择了3只是为了举例),它是输出文本文件“example.txt”中的元素的方阵。
以下是我的代码:
#include <iostream>
#include <fstream>
using namespace std;
int main () {
int numRows = 3;
ofstream myfile ("example.txt");
if (myfile.is_open())
{
for (int i = 0; i < numRows; i++) {
for (int j = 0; j < numRows; j++) {
myfile << "Test\t";
}
myfile << "\n";
}
myfile.close();
}
else cout << "Unable to open file";
return 0;
}
文本文件如下:
Test Test Test
Test Test Test
Test Test Test
我的问题是,如果我完成了所有操作后,如何再次打开并编辑它?例如,我想将第2行第2列编辑为“Hello”:
Test Test Test
Test Hello Test
Test Test Test
我该如何做?我需要能够操作存储在该文本文件中的字符串,但由于我已经通过制表符分隔了每个字符串,所以不确定该怎么做。
感谢您抽出时间来帮助!
new[]
可以手动分配动态内存,这在功能上等同于向量,但初学者在这样做时往往会犯很多错误。另一种选择是在运行时读取和修改文件,边读边写入新值,如果您需要进行长序列的更新或处理大型文件,则性能方面不是非常可扩展,但也许您并不需要。 - Tony Delroy