MFC 循环删除文件夹以及文件
时间: 2024-03-01 15:52:00 浏览: 200
你可以使用递归函数来循环删除文件夹以及文件。以下是一个示例代码:
```c++
BOOL DeleteFolder(LPCTSTR lpszFolderPath)
{
CFileFind finder;
CString strWildcard = lpszFolderPath;
strWildcard += _T("\\*.*");
BOOL bWorking = finder.FindFile(strWildcard);
while (bWorking)
{
bWorking = finder.FindNextFile();
if (finder.IsDots())
continue;
CString strFilePath = finder.GetFilePath();
if (finder.IsDirectory())
{
if (!DeleteFolder(strFilePath))
return FALSE;
}
else
{
if (!DeleteFile(strFilePath))
return FALSE;
}
}
finder.Close();
return RemoveDirectory(lpszFolderPath);
}
```
你可以将要删除的文件夹路径传递给 `DeleteFolder` 函数,该函数会递归地删除该文件夹中的所有文件和子文件夹,最后删除该文件夹本身。在删除文件或文件夹时,你需要检查是否成功删除,否则函数将返回 FALSE。
阅读全文