Maison  >  Article  >  développement back-end  >  Comment supprimer du contenu à un emplacement spécifié dans un fichier en utilisant C++ ?

Comment supprimer du contenu à un emplacement spécifié dans un fichier en utilisant C++ ?

PHPz
PHPzoriginal
2024-06-05 19:31:01226parcourir

La fonction effacer() en C++ est utilisée pour supprimer le contenu d'un fichier. La syntaxe est stream.erase(streampos start_pos, streampos end_pos). Lorsque vous utilisez la fonction Eraser(), vous devez spécifier la position de début et la position de fin (décalage d'octets) du contenu supprimé.

Comment supprimer du contenu à un emplacement spécifié dans un fichier en utilisant C++ ?

Comment supprimer le contenu d'un fichier à l'aide de la fonction effacer() en C++

La bibliothèque C++ fournit une variété de méthodes pour manipuler des fichiers, y compris la fonction effacer(), qui vous permet de supprimer un élément spécifique plage à partir d'un fichier Contenu.

Syntaxe :

stream.erase(streampos start_pos, streampos end_pos);
  • stream : Objet de flux de fichiers stream:文件流对象
  • start_pos:要删除内容的起始位置(字节偏移量)
  • end_pos
  • start_pos : La position de départ (décalage d'octets) du contenu à supprimer

end_pos : La position de fin (décalage d'octets) du contenu à supprimer

Cas pratique :

Supposons que nous ayons un fichier nommé "data.txt" qui contient le texte suivant :

This is a sample text file.
Hello, world!

Pour supprimer la ligne "Hello, world!" d'un fichier, vous pouvez utiliser le code suivant : 🎜
#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;
}
🎜Après avoir exécuté ce code, le fichier "data.txt" ressemblera à ceci : 🎜
This is a sample text file.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn