Windows下 文件复制、删除、重命名操作

来源:互联网 发布:域名注册通 吾爱破解 编辑:程序博客网 时间:2024/06/07 07:08

一、文件复制操作

#include <iostream>#include <fstream>using namespace std;int CopyFile(char *SourceFile,char *NewFile){ifstream in;ofstream out;in.open(SourceFile,ios::binary);//打开源文件if(in.fail())//打开源文件失败{cout<<"Error 1: Fail to open the source file."<<endl;in.close();out.close();return 0;}out.open(NewFile,ios::binary);//创建目标文件 if(out.fail())//创建文件失败{cout<<"Error 2: Fail to create the new file."<<endl;out.close();in.close();return 0;}else//复制文件{out<<in.rdbuf();out.close();in.close();return 1;}}int main(){char source[256],NewFile[256];cout<<"请输入要复制的文件路径:"<<endl;cin>>source;cout<<"请输入新文件的路径:"<<endl;cin>>NewFile;if(CopyFile(source,NewFile)){cout<<"文件已成功复制..."<<endl;}else{cout<<"文件复制失败..."<<endl;}return 0;}


二、文件删除操作

#include <iostream>#include <windows.h>#include <io.h>using namespace std;void main(){char source[256];//文件路径cout<<"请输入要删除的文件路径:"<<endl;cin>>source;/* _access(char *,int) 判断文件是否存在存在 返回0;不存在 返回-1._access(const char *path,int mode)mode的值:00 是否存在02 写权限04 读权限06 读写权限*/if(!_access(source,0))//如果文件存在:文件为只读无法删除{//去掉文件只读属性SetFileAttributesA(source,0);if(DeleteFileA(source))//删除成功{cout<<source<<" 已成功删除."<<endl;}else//无法删除:文件只读或无权限执行删除{cout<<source<<" 无法删除:文件为只读属性或无删除权限."<<endl;}}else//文件不存在{cout<<source<<" 不存在,无法删除."<<endl;}}


三、文件重命名操作

#include <iostream>#include <windows.h>#include <io.h>using namespace std;void main(){char source[256];//文件路径char newname[256];cout<<"请输入要重命名的文件路径:"<<endl;cin>>source;cout<<"请输入文件的新名称:"<<endl;cin>>newname;if(!_access(source,0))//如果文件存在:{if(!rename(source,newname))//删除成功{cout<<source<<" 成功重命名为: "<<newname<<endl;}else//无法重命名:文件打开或无权限执行重命名{cout<<"文件无法重命名(可能原因如下):"<<endl;cout<<"\t"<<"1. "<<newname<<" 已存在"<<endl<<"\t"<<"2. "<<newname<<" 正在使用,未关闭."<<endl<<"\t"<<"3. "<<"你没有权限重命名此文件."<<endl;}}else//文件不存在{cout<<source<<" 不存在,无法重命名."<<endl;}}






0 0
原创粉丝点击