MFC 如何移除文件夹包括文件夹中所有内容
时间: 2023-07-29 15:14:44 浏览: 90
在 MFC 中,可以使用 CFileFind 类来遍历文件夹中的所有文件和子文件夹。然后可以使用 CFile::Remove 或 CFile::RemoveEx 函数来删除找到的文件,使用 CFile::Close 函数关闭文件句柄。最后,使用 RemoveDirectory 函数来删除空的子文件夹,直到所有文件和文件夹都被删除。
以下是一个示例代码片段,可以实现删除文件夹及其内容的功能:
```c++
void RemoveFolder(CString strFolder)
{
CString strWildcard = strFolder + _T("\\*.*");
CFileFind finder;
BOOL bWorking = finder.FindFile(strWildcard);
while (bWorking)
{
bWorking = finder.FindNextFile();
if (finder.IsDots())
continue;
CString str = finder.GetFilePath();
if (finder.IsDirectory())
{
RemoveFolder(str);
RemoveDirectory(str);
}
else
{
CFile::Remove(str);
}
}
finder.Close();
RemoveDirectory(strFolder);
}
```
这个函数会递归地遍历指定文件夹及其子文件夹中的所有文件和文件夹,并将它们全部删除。最后,该函数调用 RemoveDirectory 函数删除指定文件夹。
阅读全文