ホームページ  >  記事  >  バックエンド開発  >  C++ を使用してファイル内の指定された場所にあるコンテンツを削除するにはどうすればよいですか?

C++ を使用してファイル内の指定された場所にあるコンテンツを削除するにはどうすればよいですか?

PHPz
PHPzオリジナル
2024-06-05 19:31:01231ブラウズ

C++ の Erase() 関数は、ファイルからコンテンツを削除するために使用されます。構文は、stream.erase(streampos start_pos, streampos end_pos) です。 Erase()関数を使用する場合は、削除するコンテンツの開始位置と終了位置(バイトオフセット)を指定する必要があります。

C++ を使用してファイル内の指定された場所にあるコンテンツを削除するにはどうすればよいですか?

C++ の Erase() 関数を使用してファイルからコンテンツを削除する方法

C++ ライブラリには、特定のファイルを削除できる Erase() 関数など、ファイルを操作するためのさまざまなメソッドが用意されています。ファイルコンテンツからの範囲。

構文:

stream.erase(streampos start_pos, streampos end_pos);
  • stream: ファイルストリームオブジェクト stream:文件流对象
  • start_pos:要删除内容的起始位置(字节偏移量)
  • end_pos
  • start_pos: 削除するコンテンツの開始位置 (バイトオフセット)

end_pos: 削除するコンテンツの終了位置 (バイト オフセット)

実際のケース:

次のテキストを含む "data.txt" という名前のファイルがあるとします:

This is a sample text file.
Hello, world!

ファイルから「Hello, world!」行を削除するには、次のコードを使用します: 🎜
#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;
}
🎜 このコードを実行すると、ファイル「data.txt」は次のようになります: 🎜
This is a sample text file.

以上がC++ を使用してファイル内の指定された場所にあるコンテンツを削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。