c++用文件流实现文件拷贝

之前用c++作后台的时候碰到一个问题:返回一张图片数据。查了一些资料终于解决了。核心就是文件流怎么读写的问题,已经将问题简化为文件拷贝,代码如下:

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    cout << "Content-Type:image/png\r\n\r\n";
    fstream file;
    file.open("1.png", ios::binary|ios::in|ios::ate);   //打开时指针在文件尾
    int length = file.tellg();
    char* imgData = new char[length];
    file.seekg(0);
    file.read(imgData, length);  //二进制只能用这个读
    
    fstream file2;
    file2.open("2.png", ios::binary|ios::out);
    file2.write(imgData, length);   //二进制只能用这个写
    cout << "ok";
    
    return 0;
}

结果:
在这里插入图片描述
原来是不存在2.png的

猜你喜欢

转载自blog.csdn.net/u013749051/article/details/83308710