#include <iostream>
#include <string>
#include <fstream>
enum { LEN = 2048 };
using namespace std;
bool copy_file(const string& str, const string& str_c) {
//打开文件
fstream in(str.c_str(), ios::in | ios::binary);
fstream out(str_c.c_str(), ios::out | ios::binary|ios::trunc);
//判断文件是否打开成功,不成功则return false;
if (!in | !out) {
return false;
}
//读写文件
char temp[LEN];//创建临时存储“容器”
//利用eof函数判断是否读入到文件尾部,是则弹出循环
while (!in.eof()) {
in.read(temp, LEN);//read(目标容器,读取长度)
const int count = in.gcount();//获取到实际读入长度
out.write(temp, count);//wirte(目标容器,读取长度)
}
//关闭文件流;
in.close();
out.close();
//返回true;
return true;
}
int main() {
copy_file("test.txt","text2.txt") || cout << "文件复制成功" << endl;
return EXIT_SUCCESS;
}