C++ 文件的复制、删除、重命名
2013-03-17 10:19
337 查看
一、文件的复制
#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;
}
}
void main()
{
char source[256],NewFile[256];
cout<<"请输入要复制的文件路径:"<<endl;
cin>>source;
cout<<"请输入新文件的路径:"<<endl;
cin>>NewFile;
if(CopyFile(source,NewFile))
{
cout<<"文件已成功复制..."<<endl;
}
else
{
cout<<"文件复制失败..."<<endl;
}
cin.get();
cin.get();
}
二、文件的删除
#include <iostream.h>
#include <windows.h>
#include <io.h>
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))//如果文件存在:文件为只读无法删除
{
//去掉文件只读属性
SetFileAttributes(source,0);
if(DeleteFile(source))//删除成功
{
cout<<source<<" 已成功删除."<<endl;
}
else//无法删除:文件只读或无权限执行删除
{
cout<<source<<" 无法删除:文件为只读属性或无删除权限."<<endl;
}
}
else//文件不存在
{
cout<<source<<" 不存在,无法删除."<<endl;
}
cin.get();
}
三 文件的重命名
#include <iostream.h>
#include <windows.h>
#include <io.h>
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;
}
cin.get();
}
相关文章推荐
- C++ 文件的复制、删除、重命名
- ASP FSO操作文件(复制文件、重命名文件、删除文件、替换字符
- linux学习笔记(三) 复制、删除、移动、重命名文件(文件夹)命令
- C++ 文件的复制、删除、重命名
- Linux下复制、删除和重命名文件或文件夹
- C#实现的文件操作封装类完整实例【删除,移动,复制,重命名】
- VC 复制移动删除重命名文件文件夹 .
- C++ : 重命名 及 删除文件 (C 风格)
- C/C++文件剪切复制删除
- vc文件复制和删除及移动和重命名
- Java遍历文件夹,重命名文件,删除文件,复制文件等操作
- Android 关于文件及文件夹的创建 、删除、重命名、复制拷贝、添加内容、修改内容、读取内容
- [API学习]删除、复制、重命名、移动文件
- ASP FSO文件操作函数代码(复制文件、重命名文件、删除文件、替换字符串)
- python 学习记录(11)-文件处理/读取文件/文件写入内容/文件删除/文件复制/文件重命名/后缀名/内容查找与替换/文件比较/ 配置文件访问/目录创建与删除/遍历目录/定向输出
- C++ 文件的复制、删除、重命名
- C++ 文件的复制、删除、重命名
- Java对于文件的新建,重命名,删除,以及遍历,以及复制
- 批量文件操作命令行工具(复制、剪切、重命名、删除等)
- C++ 文件的复制、删除、重命名