#include"windows.h"
#include"string.h" BOOL IsDirectory(const char *pDir)
{
char szCurPath[];
ZeroMemory(szCurPath, );
sprintf_s(szCurPath, , "%s//*", pDir);
WIN32_FIND_DATAA FindFileData;
ZeroMemory(&FindFileData, sizeof(WIN32_FIND_DATAA)); HANDLE hFile = FindFirstFileA(szCurPath, &FindFileData); /**< find first file by given path. */ if (hFile == INVALID_HANDLE_VALUE)
{
FindClose(hFile);
return FALSE; /** 如果不能找到第一个文件,那么没有目录 */
}
else
{
FindClose(hFile);
return TRUE;
} } BOOL DeleteDirectory(const char * DirName)
{
// CFileFind tempFind; //声明一个CFileFind类变量,以用来搜索
char szCurPath[MAX_PATH]; //用于定义搜索格式
_snprintf(szCurPath, MAX_PATH, "%s//*.*", DirName); //匹配格式为*.*,即该目录下的所有文件
WIN32_FIND_DATAA FindFileData;
ZeroMemory(&FindFileData, sizeof(WIN32_FIND_DATAA));
HANDLE hFile = FindFirstFileA(szCurPath, &FindFileData);
BOOL IsFinded = TRUE;
while (IsFinded)
{
IsFinded = FindNextFileA(hFile, &FindFileData); //递归搜索其他的文件
if (strcmp(FindFileData.cFileName, ".") && strcmp(FindFileData.cFileName, "..")) //如果不是"." ".."目录
{
std::string strFileName = "";
strFileName = strFileName + DirName + "//" + FindFileData.cFileName;
std::string strTemp;
strTemp = strFileName;
if (IsDirectory(strFileName.c_str())) //如果是目录,则递归地调用
{
printf("目录为:%s/n", strFileName.c_str());
DeleteDirectory(strTemp.c_str());
}
else
{
DeleteFileA(strTemp.c_str());
}
}
}
FindClose(hFile); BOOL bRet = RemoveDirectoryA(DirName);
if (bRet == ) //删除目录
{
printf("删除%s目录失败!/n", DirName);
return FALSE;
}
return TRUE;
}

[windows][C++][库]遍历删除文件夹的更多相关文章

  1. PHP遍历、删除文件夹中的所有文件

    <?php header("Content-type:text/html;charset=utf-8"); /** * getDirFile 遍历文件夹中的所有文件 * @p ...

  2. windows下删除文件夹里的 .svn

    windows下: 删除文件夹里的 .svn, cmd  进入相应目录  运行    for /r ./ %a in (./) do @if exist "%a/.svn" rd ...

  3. python 实现彻底删除文件夹和文件夹下的文件

    python 中有很多内置库可以帮忙用来删除文件夹和文件,当面对要删除多个非空文件夹,并且目录层次大于3层以上时,仅使用一种内置方法是无法达到彻底删除文件夹和文件的效果的,比较low的方式是多次调用直 ...

  4. Python文件操作大全,随机删除文件夹内的任意文件

     在读文件的时候往往需要遍历文件夹,python的os.path包含了很多文件.文件夹操作的方法: os.path.abspath(path) #返回绝对路径os.path.basename(path ...

  5. Qt删除文件夹

    写的软件需要进行文件夹的复制,开始不怎么懂就找了个拷贝文件夹的代码测试了一下,运行程序选择了源目录和目标目录相同进行拷贝,结果悲剧了.因为是递归拷贝,导致文件夹被嵌套N层,软件死机,强制结束后,产生的 ...

  6. Java删除文件夹和文件

    转载自:http://blog.163.com/wu_huiqiang@126/blog/static/3718162320091022103144516/ 以前在javaeye看到过关于Java操作 ...

  7. Web 在线文件管理器学习笔记与总结(15)剪切文件夹 (16)删除文件夹

    (15)剪切文件夹 ① 通过rename($oldname,$newname) 函数实现剪切文件夹的操作 ② 需要检测目标文件夹是否存在,如果存在还要检测目标目录中是否存在同名文件夹,如果不存在则剪切 ...

  8. C# 添加,修改,删除文件夹/文件集合

    C#追加文件 StreamWriter sw = File.AppendText(Server.MapPath(".")+"\\myText.txt"); sw ...

  9. 【转】Java删除文件夹和文件

    原文网址:http://kxjhlele.iteye.com/blog/323657 以前在javaeye看到过关于Java操作文件的一篇文章,写的很好,但找了半天也没找到,就把找到底几篇文章整理一下 ...

随机推荐

  1. django1.9 创建项目和app并初始化项目

    创建项目: django-admin startproject  mytest04 创建app: python manage.py startapp app04 配置:settings.py 1. 2 ...

  2. Daily Scrum 10.31

    今天是万圣节,也是编译课程设计第一次作业截至的日子,但由于大家对时间的合理安排,我们还是完成了一定的任务量. 下面是今天的Task统计: 不仅燃尽图和燃速图出不来,连那个所有迭代状态的图也出不来了.. ...

  3. respond.min.js IE失效问题

    respond.min.js  用于解决 ie6-ie8媒体查询 兼容问题: 1. 需把文件置于服务器上,iis下运行 2.包含媒体查询的 css文件需 采用外链形式 3.头部引用的respond.m ...

  4. SSH框架中 Spring设置定时器 Quartz

    一,首先下载quartz-1.6.0.jar架包,到lib目录下 二,写你自己定时器业务方法 package com.lbnet.lzx.timing; import org.quartz.JobEx ...

  5. [译]line clampin让文字在指定的行数内省略号显示

    说明 (1)原文:http://css-tricks.com/line-clampin/ (2)非直译 需求: 当文字长度超过N行时,文字后面自动用省略号补齐. 比如,你有如下的HTML代码: < ...

  6. IOS第八天(7:UITableViewController新浪微博,cell 复用的简单写法优化和cell高度从模型中获取)

    *********** #import "HMViewController.h" #import "HMStatus.h" #import "HMSt ...

  7. EmguCV+Win7+Visual C# 2012 配置

    一.下载与安装OpenCV 安装包版本:OpenCV2.4.2 X86 下载地址:http://sourceforge.net/projects/opencvlibrary/files/opencv- ...

  8. 【iCore3 双核心板_FPGA】实验二十三:使用JTAG UART终端打印信息

    实验指导书及代码包下载: http://pan.baidu.com/s/1c83OPC iCore3 购买链接: https://item.taobao.com/item.htm?id=5242294 ...

  9. bootstrap全局CSS样式学习

    参考http://v3.bootcss.com/css/,根据自己的记忆进行的复述,加深记忆. 首先介绍bootstrap全局CSS样式 只通过使用bootstrap.css,即可获得统一的样式设置. ...

  10. mysql5.5 修改字符集

    对于使用者来说,一般推荐使用utf8编码来存储数据.而要解决乱码问题,不单单是MySQL数据的存储问题,还和用户的程序文件的编码方式.用户程序和MySQL数据库的连接方式都有关系. 首先,MySQL有 ...