>  기사  >  백엔드 개발  >  C++를 사용하여 파일의 지정된 위치에 있는 콘텐츠를 삭제하는 방법은 무엇입니까?

C++를 사용하여 파일의 지정된 위치에 있는 콘텐츠를 삭제하는 방법은 무엇입니까?

PHPz
PHPz원래의
2024-06-05 19:31:01277검색

C++의 erase() 함수는 파일에서 내용을 삭제하는 데 사용됩니다. 구문은 streampos start_pos, streampos end_pos)입니다. erasure() 함수를 사용할 때 삭제된 내용의 시작 위치와 끝 위치(바이트 오프셋)를 지정해야 합니다.

C++를 사용하여 파일의 지정된 위치에 있는 콘텐츠를 삭제하는 방법은 무엇입니까?

C++에서 erasure() 함수를 사용하여 파일에서 콘텐츠를 삭제하는 방법

C++ 라이브러리는 특정 파일을 삭제할 수 있는 eraser() 함수를 포함하여 파일을 조작하는 다양한 방법을 제공합니다. 파일 콘텐츠의 범위입니다.

구문: ​​

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.