static void DeleteDirectory(const CString& strDir)
{
if (strDir.IsEmpty())
{
RemoveDirectory(strDir);
return;
}
//首先删除文件及子文件夹
CFileFind ff;
BOOL bFound = ff.FindFile(strDir + _T("\\*"), 0);
while (bFound)
{
bFound = ff.FindNextFile();
if (ff.GetFileName() == _T(".") || ff.GetFileName() == _T(".."))
continue;
//去掉文件(夹)只读等属性
SetFileAttributes(ff.GetFilePath(), FILE_ATTRIBUTE_NORMAL);
if (ff.IsDirectory())
{
//递归删除子文件夹
DeleteDirectory(ff.GetFilePath());
if (!RemoveDirectory(ff.GetFilePath()))
{
CString strTempPath;
strTempPath.Format(L"删除%s失败,请手动清除。", ff.GetFilePath());
AfxMessageBox(strTempPath);
}
}
else
{
if (!DeleteFile(ff.GetFilePath()))
{
CString strTempPath;
strTempPath.Format(L"删除%s失败,请手动清除。", ff.GetFilePath());
AfxMessageBox(strTempPath);
}
}
}
ff.Close();
//然后删除该文件夹
//RemoveDirectory(strDir);
}
MFC 删除目录及子目录文件
原创
©著作权归作者所有:来自51CTO博客作者春蕾夏荷的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:QT 字体形状窗体
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
清空文件夹 Python os 清空文件夹linux
首先对于Linux的目录结构的大体进行讲解一下:1:基本的命令(1)ctrl+win+d:显示桌面(这是快捷键)ctrl+alt+T:快速打开一个终端ctrl+shift+T:创建一个终端,并且以类似浏览器的方式进行多终端显示,并且用alt+数字来进行显示对应数字的终端界面; ctrl+shift+D:
清空文件夹 Python os linux清空文件夹的命令 tar压缩文件夹命令 ubuntu压缩文件夹命令 当前目录