65.9K
CodeProject 正在变化。 阅读更多。
Home

轻松删除文件夹、子文件夹和文件

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.31/5 (11投票s)

2002年2月21日

viewsIcon

263777

本文展示了如何删除所选文件夹中的所有文件和子文件夹。

引言

我创建这个是为了向你展示如何删除所选文件夹中的所有文件和子文件夹,包括子文件夹。它非常容易理解,并且全部使用 MFC (CFileFind,以及一些 API 函数) 实现。

void RecursiveDelete(CString szPath)
{
	CFileFind ff;
	CString path = szPath;
	
	if(path.Right(1) != "\\")
		path += "\\";

	path += "*.*";

	BOOL res = ff.FindFile(path);

	while(res)
	{
		res = ff.FindNextFile();
		if (!ff.IsDots() && !ff.IsDirectory())
			DeleteFile(ff.GetFilePath());
		else if (ff.IsDirectory())
		{
			path = ff.GetFilePath();
			RecursiveDelete(path);
			RemoveDirectory(path);
		}
	}
}
© . All rights reserved.