Heim > Artikel > Backend-Entwicklung > Wie lösche ich mit C++ Inhalte an einer bestimmten Stelle in einer Datei?
Die Funktion erase() in C++ wird zum Löschen von Inhalten aus einer Datei verwendet. Die Syntax lautet stream.erase(streampos start_pos, streampos end_pos). Wenn Sie die Funktion erase() verwenden, müssen Sie die Startposition und Endposition (Byte-Offset) des gelöschten Inhalts angeben.
So löschen Sie Inhalte aus einer Datei mit der Funktion erase() in C++
Die C++-Bibliothek bietet eine Vielzahl von Methoden zum Bearbeiten von Dateien, einschließlich der Funktion erase(), mit der Sie eine bestimmte Datei löschen können reichen von einem Dateiinhalt.
Syntax:
stream.erase(streampos start_pos, streampos end_pos);
stream
: Datei-Stream-Objekt stream
:文件流对象start_pos
:要删除内容的起始位置(字节偏移量)end_pos
start_pos
: Die Startposition (Byte-Offset) des zu löschenden Inhalts end_pos: Die Endposition (Byte-Offset) des zu löschenden Inhalts
Praktischer Fall:
Angenommen, wir haben eine Datei mit dem Namen „data.txt“, die den folgenden Text enthält:This is a sample text file. Hello, world!Um die Zeile „Hello, world!“ aus einer Datei zu entfernen, können Sie den folgenden Code verwenden: 🎜
#include <fstream> #include <iostream> using namespace std; int main() { // 打开文件,用于读写 fstream file("data.txt", ios::in | ios::out); if (!file.is_open()) { cout << "无法打开文件!" << endl; return 1; } // 定位到要删除内容的起始位置 file.seekg(16); // 定位到要删除内容的结束位置 file.seekp(27); // 删除指定范围的内容 file.erase(file.tellg(), file.tellp()); // 关闭文件 file.close(); cout << "删除操作成功!" << endl; return 0; }🎜Nach dem Ausführen dieses Codes sieht die Datei „data.txt“ so aus: 🎜
This is a sample text file.
Das obige ist der detaillierte Inhalt vonWie lösche ich mit C++ Inhalte an einer bestimmten Stelle in einer Datei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!