21xrx.com
2025-03-28 15:57:09 Friday
文章检索 我的文章 写文章
C++如何在文件尾或文件头写入数据?
2023-06-30 17:51:20 深夜i     12     0
C++ 文件尾 文件头 写入数据

在C++编程中,文件输入输出是一个非常常见的任务。当我们在处理文件数据时,可能需要在文件头或文件尾写入新的数据。这可以通过C++的文件输出流和文件输入流来实现。下面是一些关于如何在文件头或文件尾写入数据的方法。

1. 在文件头写入数据:

使用文件输出流的seekp()函数可以定位到文件的第一个位置,然后使用文件输出流的write()函数向文件头写入数据。下面是一段演示代码:

#include <fstream>
using namespace std;
int main()
{
  fstream file("example.txt", ios::in | ios::out | ios::binary); //打开文件,同时支持输入输出
  if(file.is_open())
  {
    //好像每个学生的名字前边都有一个‘*’
    file.seekp(0, ios::beg); //定位到文件头
    
    char name[] = "*Tom";
    file.write(name, sizeof(name) - 1); //写入数据
    
    file.close();
  }
  return 0;
}

2. 在文件尾写入数据:

使用文件输出流的seekp()函数,将文件光标定位到文件末尾,然后使用文件输出流的write()函数向文件尾写入数据。下面是一段演示代码:

#include <fstream>
using namespace std;
int main()
{
  fstream file("example.txt", ios::in | ios::out | ios::binary); //打开文件,同时支持输入输出
  if(file.is_open())
  {
    file.seekp(0, ios::end); //定位到文件尾
    
    char name[] = "Harry"; //名字太长就用Harry代替
    file.write(name, sizeof(name) - 1); //写入数据
    
    file.close();
  }
  return 0;
}

总结:

在C++中,使用文件输出流和文件输入流向文件头或文件尾写入数据非常容易。我们只需要使用 seekp() 函数定位到文件头或文件尾,然后使用 write() 函数向文件中写入数据即可。以上就是C++如何在文件头或文件尾写入数据的方法。

  
  

评论区