c++删除文件夹 源码

由于没有找到直接用于删除文件夹的函数,所以自己写了一个。

void CDeleteDlg::DelFile(CString path,CString name)
{
	CString strtemp;
	if (path.Right(1) != "\\")										//判断路径是否以\结尾
		strtemp.Format("%s\\*.*",path);								//设置通配符
	else
		strtemp.Format("%s*.*",path);								//设置通配符
	CFileFind findfile;
	BOOL bfind = findfile.FindFile(strtemp);						//查找文件
	while (bfind)													//循环查找
	{
		bfind = findfile.FindNextFile();							//查找下一个文件
		if(!findfile.IsDots() && !findfile.IsDirectory())
		{
			CString str = findfile.GetFileName();
			int index   = str.ReverseFind('.');
			if(str.Right(str.GetLength()-index) == name)
			{
				DeleteFile(findfile.GetFilePath());
			}
		}
		else if (findfile.IsDots())
		{
			continue;
		}
		else if (findfile.IsDirectory())							//如果是目录
		{
			DelFile(findfile.GetFilePath(),name);					//递归查找
		}
	}
}
时间: 2024-10-25 09:30:08

c++删除文件夹 源码的相关文章

AndroidStudio导入第三方开源库 --文件夹源码

1 在已打开的项目中  File-New-ImportModule 选择开源项目中的 库所在文件夹比如 library文件夹 然后导入. 2 File-Project  Sructure  在Modules 那 选择我们的项目文件(默认app) -选择Dependencies  - 绿色"+"号  Module Dependence  选择我们刚刚导入的开源项目即可,这时我们就可以用导入的模块了. 3 由于gradle版本  编译工具 SDK等工具版本 很可能不一致导致不能正常编译,我

apache FtpClient上传下载删除文件夹及文件

/* * 文件名:FtpUtil.java * 描述:FTP操作 * 修改时间2014-08-10 */ import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.text.SimpleDateFormat; import jav

Qt删除文件夹

写的软件需要进行文件夹的复制,开始不怎么懂就找了个拷贝文件夹的代码测试了一下,运行程序选择了源目录和目标目录相同进行拷贝,结果悲剧了.因为是递归拷贝,导致文件夹被嵌套N层,软件死机,强制结束后,产生的文件夹有N多层,右键删除说文件名太长无法删除.网上找了很多方法都无法清理掉这个嵌套的文件夹,折磨了N久,终于想通,既然是Qt生成的嵌套文件夹,为何不用Qt再写一个删除的程序呢?于是动手查看help,找API函数说明,码代码. //删除文件夹 bool MainWindow::DelDir(const

Java文件操作源码大全

1.创建文件夹 52.创建文件 53.删除文件 54.删除文件夹 65.删除一个文件下夹所有的文件夹 76.清空文件夹 87.读取文件 88.写入文件 99.写入随机文件 910.读取文件属性 911.写入属性 1012.枚举一个文件夹中的所有文件 1013.复制文件夹 1114.复制一个目录下所有的文件夹到另一个文件夹下 1215.移动文件夹 1316.移动一个目录下所有的文件夹到另一个目录下 1517.以一个文件夹的框架在另一个目录创建文件夹和空文件 1618.复制文件 1719.复制一个目

Python - 创建目录,切换目录,创建文件,复制文件,移动文件 ,删除文件夹及文件

# -*- coding: utf-8 -*- """ Created on Mon Jan  9 00:35:43 2017 @author-Weixin: 953558077 """ import os import shutil import time ''' shutil模块的基础功能简介 copyfile( src, dst)      从源src复制到dst中去.当然前提是目标地址是具备可写权限.抛出的异常信息为IOException

Asp.Net Web Api 2 实现多文件打包并下载文件示例源码_转

一篇关于Asp.Net Web Api下载文件的文章,之前我也写过类似的文章,请见:<ASP.NET(C#) Web Api通过文件流下载文件到本地实例>本文以这篇文章的基础,提供了ByteArrayContent的下载以及在下载多个文件时实现在服务器对多文件进行压缩打包后下载的功能.关于本文中实现的在服务器端用.NET压缩打包文件功能的过程中,使用到了一个第方类库:DotNetZip,具体的使用将在正文中涉及.好了,描述了这么多前言,下面我们进入本文示例的正文. 一.创建项目 1.1 首先创

git文件致源码泄露

前言:在一道ctf题的驱动下,我进行了对git和.git文件致源文件泄露的学习. 一.任务 一道ctf题目. 二.确定题目考的点 谷歌关键词:版本管理工具 github ctf 由得到的结果猜测,可能考的点是.git文件导致源文件泄露. 三.对git的粗略学习 其实经常会用到git,例如在用hexo+github pages搭建博客的时候就用到了git,又如在linux下载一些工具的时候,用到的git clone. git:分布式版本控制系统. 首先,何为版本控制系统?以git的诞生故事来解释,

强制删除文件夹

今天在删除桌面的文件夹时,一直都删不掉,说什么权限不够,当时就懵逼了,于是就想着用命令来删除该文件夹. 首先我是用的是:rmdir 目录名 然后提示我说是非空文件夹,此时我明白了,原来该命令只能删除空文件夹.此路不通,看来得另寻他法了.在网上查找了很久,在试了n次之后,发现这个可恶的文件夹终于被我成功地删除了. 要删除一个非空文件夹可以使用如下命令: rd /s 文件夹名        // rd的意思就是删除文件夹,(remove directory),/s表示删除该目录下所有遍历的子目录和文

linux下的c语言编程删除文件夹

刚刚在学习开始做新项目的时候,学长布置了一项任务,就是在给定一个目录下,要将这个目录下一个星期之前的目录包括里面的文件全部删除,只保留这一个星期内的.百度了好久的资料,终于完成,记录一下防止忘记.(注:文件夹名称默认为日期格式,如20140716) #include<dirent.h> #include<sys/types.h> #include<string.h> #include<stdlib.h> #include<unistd.h> #i