C++ 删除指定路径文件夹
2016-06-10 21:50
246 查看
/************************************************************************/
/* 删除指定路径下的文件夹
/* DirName: 文件路径
/* bNeedDel: 是否删除文件夹
/************************************************************************/
void DeleteDirectory(char *DirName, bool bNeedDel)
{
CFileFind tempFind;
char tempFileFind[MAX_PATH];
sprintf(tempFileFind,"%s\\*.*",DirName);
BOOL IsFinded=(BOOL)tempFind.FindFile(tempFileFind); //判断文件夹下是否存在文件
while(IsFinded) //存在
{
IsFinded=(BOOL)tempFind.FindNextFile(); //判断是否存在下一个文件
if(!tempFind.IsDots())
{
char foundFileName[MAX_PATH] = {0};
strcpy(foundFileName,tempFind.GetFileName().GetBuffer(MAX_PATH));
if(tempFind.IsDirectory())
{
char tempDir[MAX_PATH] = {0};
sprintf(tempDir,"%s\\%s",DirName,foundFileName);
DeleteDirectory(tempDir, bNeedDel);
}
else
{
char tempFileName[MAX_PATH] = {0};
sprintf(tempFileName,"%s\\%s",DirName,foundFileName);
DeleteFile(tempFileName);
}
}
}
tempFind.Close();
if (bNeedDel)
{
RemoveDirectory(DirName);
}
}
/************************************************************************/
/* 删除指定路径下的文件夹
/* DirName: 文件路径
/* bNeedDel: 是否删除文件夹
/************************************************************************/
void DeleteDirectory(char *DirName, bool bNeedDel)
{
CFileFind tempFind;
char tempFileFind[MAX_PATH];
sprintf(tempFileFind,"%s\\*.*",DirName);
BOOL IsFinded=(BOOL)tempFind.FindFile(tempFileFind); //判断文件夹下是否存在文件
while(IsFinded) //存在
{
IsFinded=(BOOL)tempFind.FindNextFile(); //判断是否存在下一个文件
if(!tempFind.IsDots())
{
char foundFileName[MAX_PATH] = {0};
strcpy(foundFileName,tempFind.GetFileName().GetBuffer(MAX_PATH));
if(tempFind.IsDirectory())
{
char tempDir[MAX_PATH] = {0};
sprintf(tempDir,"%s\\%s",DirName,foundFileName);
DeleteDirectory(tempDir, bNeedDel);
}
else
{
char tempFileName[MAX_PATH] = {0};
sprintf(tempFileName,"%s\\%s",DirName,foundFileName);
DeleteFile(tempFileName);
}
}
}
tempFind.Close();
if (bNeedDel)
{
RemoveDirectory(DirName);
}
}
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- 关于指针的一些事情
- c++ primer 第五版 笔记前言
- share_ptr的几个注意点
- C#获取文件夹及文件的大小与占用空间的方法
- 用批处理实现的创建带日期的文件夹的代码
- win2003文件夹权限设置脚本代码
- Lua中调用C++函数示例
- Lua教程(一):在C++中嵌入Lua脚本
- Lua教程(二):C++和Lua相互传递数据示例
- win2003 服务器 文件夹 权限分配
- C#编程实现获取文件夹中所有文件的文件名
- PowerShell统计文件夹下文件个数的方法
- C#遍历文件夹后上传文件夹中所有文件错误案例分析
- C#监控文件夹并自动给图片文件打水印的方法
- VBS 显示“选择文件或文件夹”对话框的代码
- C#程序中创建、复制、移动、删除文件或文件夹的示例
- C#实现获取文件夹大小的方法
- C++联合体转换成C#结构的实现方法
- C++高级程序员成长之路