更多资料请点击:我的目录
本篇仅用于记录自己所学知识及应用,代码仍可优化,仅供参考,如果发现有错误的地方,尽管留言于我,谢谢。
#include <iostream>
#include <fstream> //流对象头文件
using namespace std;
int main(int argc, char **argv)
{
fstream fin,fout;
fin.open(argv[1],ios_base::in); //只读形式打开文件1
if(!fin.is_open())
{
perror("打开文件失败!\n");
exit(0);
}
fout.open(argv[2],ios_base::out|ios_base::trunc); //只写形式打开文件2,如果文件存在则清空文件内容
if(!fout.is_open())
{
perror("打开文件失败!\n");
exit(0);
}
char *buf = (char *)calloc(1,1024); //创建堆空间
while(!fin.eof()) //判断是否到达文件1末尾
{
fin.read(buf,1024); //读取文件1内容
fout.write(buf,fin.gcount()); //写入到文件2内
}
fin.close(); //关闭文件1
fout.close(); //关闭文件2
free(buf); //释放堆空间
return 0;
}