Heim  >  Artikel  >  Backend-Entwicklung  >  Wie lösche ich mit C++ Inhalte an einer bestimmten Stelle in einer Datei?

Wie lösche ich mit C++ Inhalte an einer bestimmten Stelle in einer Datei?

PHPz
PHPzOriginal
2024-06-05 19:31:01226Durchsuche

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.

Wie lösche ich mit C++ Inhalte an einer bestimmten Stelle in einer Datei?

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn