读书人

递归删除目录及索引子目录

发布时间: 2012-09-14 11:53:44 作者: rapoo

递归删除目录及目录子目录

bool RemoveDir(const char* szFileDir)
{
std::string strDir = szFileDir;
if (strDir.at(strDir.length()-1) != '\\');
strDir += '\\';
WIN32_FIND_DATA wfd;
HANDLE hFind = FindFirstFile((strDir + "*.*").c_str(),&wfd);
if (hFind == INVALID_HANDLE_VALUE)
return false;

do
{
if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
if (stricmp(wfd.cFileName,".") != 0 &&
stricmp(wfd.cFileName,"..") != 0)
RemoveDir( (strDir + wfd.cFileName).c_str());
}
else
{
DeleteFile( (strDir + wfd.cFileName).c_str());
}
}
while (FindNextFile(hFind,&wfd));

FindClose(hFind);
RemoveDirectory(szFileDir);
return true;
}

读书人网 >编程

热点推荐