C++文件操作——查找某一类文件的三种方法
2017-08-26 14:35
246 查看
方法一、利用WIN32的FindFirstFile与FindNextFile
FindFirstFile函数是查找到目录下的第一个文件或目录,FindNextFile函数是查找下一文件或目录。
根据文件名查找文件。该函数到一个文件夹(包括子文件夹)去搜索指定文件 如果要使用附加属性去搜索文件的话 可以使用FindFirstFileEx函数。
返回值:
如果调用成功返回一个句柄,可用来做为FindNextFile或 FindClose参数
调用失败 返回为INVALID_HANDLE_VALUE(即-1) ,可调用GetLastError来获取错误信息
如果要用此函数去查找某类型的文件名时,举例代码如下:
查找D盘下的所有txt文件
FindFirstFile函数是查找到目录下的第一个文件或目录,FindNextFile函数是查找下一文件或目录。
根据文件名查找文件。该函数到一个文件夹(包括子文件夹)去搜索指定文件 如果要使用附加属性去搜索文件的话 可以使用FindFirstFileEx函数。
HANDLE FindFirstFile( LPCTSTR lpFileName,//filename 文件名(包括路径) LPWIN32_FIND_DATA lpFindFileData//databuffer 指向一个用于保存文件信息的结构体 );
返回值:
如果调用成功返回一个句柄,可用来做为FindNextFile或 FindClose参数
调用失败 返回为INVALID_HANDLE_VALUE(即-1) ,可调用GetLastError来获取错误信息
如果要用此函数去查找某类型的文件名时,举例代码如下:
查找D盘下的所有txt文件
WIN32_FIND_DATA fileinfo; DWORD errorcode = 0; HANDLE hFile; TempPath="D:\\test\\*.txt"; hFile = FindFirstFile(TempPath,&fileinfo); m_listbox.ResetContent(); while(hFile!=INVALID_HANDLE_VALUE&&errorcode!=ERROR_NO_MORE_FILES) { // m_listbox.AddString(fileinfo.cFileName); FindNextFile(hFile,&fileinfo); errorcode=GetLastError(); } if(errorcode==ERROR_NO_MORE_FILES) { MessageBox("检索结束"); } CloseHandle(hFile);方法二、利用C语言函数_findfirst 和 _findnext
_finddata_t File; long FileHandle; TempPath="D:\\test\\*.txt"; i = FileHandle = _findfirst(TempPath,&File); m_listbox.ResetContent(); while( i != -1 ) { m_listbox.AddString(File.name); i = _findnext( FileHandle, &File ); } _findclose(FileHandle);方法三、利用CFileFind类
CFileFind finder; BOOL bWorking = finder.FindFile(_T("D:\\test\\*.txt")); while (bWorking) { bWorking = finder.FindNextFile(); m_listbox.AddString(finder.GetFileName()); }
相关文章推荐
- shell查找当前目录下大于1M的文件的三种方法分享
- shell查找当前目录下大于1M的文件的三种方法分享
- C++文件操作——查找文件夹及文件是否存在的方法
- C# 读取EXCEL文件的三种经典方法
- 用ASP.net判断上传文件类型的三种方法
- ASP.NET上传文件的三种基本方法
- java 写文件的三种方法
- linux下查找某文件,文件夹的命令和方法
- 三种方法实现php网络请求(表单操作文件上传)
- MFC 打开外部EXE文件的三种方法
- linux 查找出包含某个字符串的所有文件的方法详解
- flash air中读取本地文件的三种方法
- 读取资源文件的三种方法
- java 写文件的三种方法比较
- Shell中调用、引用、包含另一个脚本文件的三种方法
- linux中的文件查找方法
- ASP.NET 三种获取指定文件路径下所有文件的文件名和路径的方法
- java 分次读取大文件的三种方法
- php下载远程文件(图片)的三种方法