求给一个程序,关于读取文件夹下所有文件名??
麻烦谁给一个程序,关于读取文件夹下所有文件名字的,最好有注释,谢谢
[解决办法]
参考一下
void CMockAppDlg::MyFindFile(CString strPath){ CString strTemp; if (strPath.Right(1)!="\\") { strTemp.Format("%s\\*.*",strPath); } else { strTemp.Format("%s*.*",strPath); } CFileFind findfile; BOOL bFind=findfile.FindFile(strTemp); while (bFind) { bFind=findfile.FindNextFile(); if (findfile.IsDirectory()) { if (!findfile.IsDots()) { MyFindFile(findfile.GetFilePath()); } } else { // 用一个CStatic控件显示查找的每一个文件 m_ctlShowFileName.SetWindowText(findfile.GetFileName()); if (strFileName==findfile.GetFileName()) { m_ctlFileList.AddString(findfile.GetFilePath()); } } if (bStop) { return; } }}
[解决办法]
#include <windows.h>#include <stdio.h>int main(int argc,char *argv[]){ char szFileName[]="d:\\*.*";//查找的根目录 WIN32_FIND_DATA findData; HANDLE hFindFile; hFindFile=::FindFirstFile(szFileName,&findData); if(hFindFile!=INVALID_HANDLE_VALUE) { do { if(findData.cFileName[0]=='.') continue; if(findData.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY) printf("%s\n",findData.cFileName); }while(::FindNextFile(hFindFile,&findData)); } getchar(); return 0;}
[解决办法]
#include <windows.h>
#include <stdio.h>
int main(int argc,char *argv[])
{
char szFileName[]="d:\\*.*";//查找的根目录
WIN32_FIND_DATA findData;
HANDLE hFindFile;
hFindFile=::FindFirstFile(szFileName,&findData);
if(hFindFile!=INVALID_HANDLE_VALUE)
{
do
{
if(findData.cFileName[0]=='.')
continue;
if(findData.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY)
printf("%s\n",findData.cFileName);
}while(::FindNextFile(hFindFile,&findData));
}
getchar();
return 0;
}