Wie schreibe ich in C ++ in die Mitte einer Datei?
Ich denke, das sollte recht einfach sein, aber mein Googeln hat bisher nicht geholfen ... Ich muss in eine vorhandene Datei in C ++ schreiben, aber nicht unbedingt am Ende der Datei.
Ich weiß, dass ich das Flag @ übergeben kann, wenn ich nur Text an meine Datei anhängen möchtios:app
bei Anrufopen
auf meinem Stream-Objekt. Ich schreibe jedoch nur bis zum Ende der Datei, aber nicht in die Mitte.
Ich habe ein kurzes Programm erstellt, um das Problem zu veranschaulichen:
#include <iostream>
#include <fstream>
using namespace std;
int main () {
string path = "../test.csv";
fstream file;
file.open(path); // ios::in and ios::out by default
const int rows = 100;
for (int i = 0; i < rows; i++) {
file << i << "\n";
}
string line;
while (getline(file, line)) {
cout << "line: " << line << endl; // here I would like to append more text to certain rows
}
file.close();
}