利用递归删除所有文件,保留目录结构
//------------------------------------------------------------------------------
//删除所有文件,保留文件夹
BOOL CUpdateDlg::DeleteAllFile(char *sDirName)
{
CFileFind tempFind;
char sTempFileFind[200] ;
sprintf(sTempFileFind,"%s\\*.*",sDirName);
BOOL IsFinded = tempFind.FindFile(sTempFileFind);
char sFoundFileName[200], sTempDir[200], sTempFileName[200];
while (IsFinded)
{
IsFinded = tempFind.FindNextFile();
if (tempFind.IsDots()) continue;
strcpy(sFoundFileName,tempFind.GetFileName().GetBuffer(200));
if (tempFind.IsDirectory())
{
sprintf(sTempDir,"%s\\%s",sDirName,sFoundFileName);
DeleteAllFile(sTempDir);
}
else
{
sprintf(sTempFileName,"%s\\%s",sDirName,sFoundFileName);
if(tempFind.IsReadOnly())
{
SetFileAttributes(sTempFileName, FILE_ATTRIBUTE_NORMAL);
}
DeleteFile(sTempFileName);
}
}
tempFind.Close();
return TRUE;
}
//------------------------------------------------------------------------------
其他支持通配符的文件删除、拷贝、移动见:http://blog.youkuaiyun.com/qq_27183003/article/details/54743114
参考:http://blog.youkuaiyun.com/l_andy/article/details/16922383