获取某路径下所有文件

BOOL Ctestdll1Dlg::GetFilelist(CString strSourceDir, vector<CString>& filelist, char* Suffix)
{
CFileFind fileFind;
int i = 0;
CString strdir = strSourceDir + _T("\\*.*");
if(fileFind.FindFile(strdir,0))
{
BOOL bRet = TRUE;
while(bRet)
{
bRet = fileFind.FindNextFile();
if(fileFind.IsDots())
{
continue;
}
if(!fileFind.IsDirectory())
{
if(Suffix != NULL)
{
int nlen = strlen(Suffix);
CString FileName = fileFind.GetFilePath();
CString SuffixStr = FileName.Right(nlen);
if(SuffixStr == Suffix)
filelist.push_back(fileFind.GetFilePath());
}
else
filelist.push_back(fileFind.GetFilePath());
}
else
{
GetFilelist(fileFind.GetFilePath(), filelist, Suffix);
}
}
fileFind.Close();
}


return TRUE;
}

猜你喜欢

转载自blog.csdn.net/nishuodeqianshou/article/details/50679794