chunkAnalyse:C++下读取指定文件下的指定文件或文件

翻译 2015年07月10日 23:00:55

用C++读取指定文件夹下的所有文件或文件夹信息


用FindFirstFile 和 FindNextFile 查找目标文件

包含的头文件:Windows.h(usually if you want to take operation on system by system function you should include this header file)

语法:HANDLE FindFirstFile(In LPCWSTR fileName,Out LPWIN32_FIND_DATA pfindFileData)
LPCWSTR  是重定义的类似于字符串指针的数据类型;
LPWIN32_FIND_DATA 是重定义的WIN32_FIND_DATA指针数据类型,一般使用&对WIN32_FIND_DATA 对象取址作为输入

输入:
fileName: 指定目标文件的地址和文件名,可用通配符
pfindFileData:指定记录文件信息的结构体的内存地址,FindFirstFile 将文件信息记录在以pfindFileData开始的地址中。
输出:
HANDLE fHandle: 查找句柄,用于 FindNextFile and FindClose 函数。

取文件名:
findFileData.cFileName: cFileName 是结构体对象findFileData的成员,存储的是文件的名字

示例代码:
#include  // 定义了WIN32_FIND_DATA,HANDLE等数据类型;FindFirstFile,FindNextFile等windows 系统函数
#include 
#include  

typedef std::string String;
typedef std::vector fileVec;

void searchFile(fileVec& fileNameVec)
{
	WIN32_FIND_DATA findFileData; //  WIN32_FIND_DATA 为结构体类型,findFileData用于存储目标文件的信息(文件名,文件类型,大小等)
	HANDLE fHandle; // 句柄,用于FindNextFile和FindClose
	String  fileName = "D:/chunkAnalyse/Data/*.txt";// 目标文件位置和名字,可以使用通配符

	fHandle = FindFirstFile((LPCWSTR)fileName.c_str(), &findFileData); // 查找满足fileName要求的第一个文件,此时findFileData记录该文件的信息
	fileNameVec.push_back(findFileData.cFileName); // 将第一个文件的名字存入vector容器中
	while (FindNextFile(fHandle, &findFileData) != 0)
	{
		fileNameVec.push_back(findFileData.cFileName);
	}
	FindClose(fHandle);
}


总结:
当操作对象是系统资源的时候,一般而言我们都需要使用系统的接口函数,要调用window系统的接口我们通常都需要#include <Windows.h>, 在 Windows.h以及他所链接到的头文件中定义了Windows的所有资料型态、函数调用资料结构和常数识别字, 如:
WINDEF.H 基本数据类型定义。
WINNT.H 支持Unicode的类型定义。
WINBASE.H Kernel(内核)函数。
WINUSER.H 用户界面函数。
WINGDI.H 图形设备接口函数。
for example,使用Windows接口我们可以读取系统时间。



C++ 获取指定文件夹下指定后缀名文件

C++ 获取指定文件夹下指定后缀名文件
  • kunyXu
  • kunyXu
  • 2017年12月21日 15:39
  • 226

python获取指定路径下的所有文件

python获取指定路径下的所有文件 def GetFileList(dir,filelist): ...
  • swfa1
  • swfa1
  • 2017年04月17日 13:44
  • 658

Java读取指定路径下的文件列表

做一个简单的说明,对于这个程序,我们必须保证我们在F盘下有一个log_files的文件夹,因为在后面写入文件的时候,如果路径中的文件不存在,是程序可以自动为其添加,但如果没有了这个路径,则程序会报找不...
  • u013761665
  • u013761665
  • 2014年09月21日 16:11
  • 2135

指定目錄及其子目錄下的查找指定文件

void BrowseFile(CString& strDir, CString& strFile, CString& Ext) { //定義查找文件對象 CFileFind cff; CSt...
  • yuxiao1121
  • yuxiao1121
  • 2012年03月28日 19:56
  • 269

java获取指定路径下文件的方法

目的:实现让用户选择一个路径 根据指定路径 读取路径下所有文件的名字 并显示问题:没找到文件夹选择框,只有选择文件的方法解决:用: 让用户指定一个文件 然后  //获取指定文件File file = ...
  • myloveyoyo1314
  • myloveyoyo1314
  • 2009年09月14日 13:39
  • 12789

matlab读取指定路径下的图像

利用matlab读取指定路径下的图像 %% 读入指定路径imgFolder下的图像imgName imgFolder = 'F:\博\快盘\图像+数据\images\文章实验图'; %指定路径...
  • tina_ttl
  • tina_ttl
  • 2016年04月01日 10:31
  • 2662

Go 获取指定目录下的文件

package main import ( "fmt" "os" ) func main() { dir, error := os.OpenFile("C:\\", os.O_RDONLY,...
  • king1076
  • king1076
  • 2013年11月09日 13:54
  • 1449

获取指定目录下的指定类型的文件

获取指定目录下的指定类型的文件
  • wangyanming123
  • wangyanming123
  • 2016年04月25日 22:57
  • 338

python获取指定路径下所有指定后缀文件的方法

本文实例讲述了python获取指定路径下所有指定后缀文件的方法。分享给大家供大家参考。具体实现方法如下: # 获取指定路径下所有指定后缀的文件 # dir 指定路径 # ext 指定后缀,链表&...
  • u010781856
  • u010781856
  • 2015年07月29日 20:30
  • 498

C++读取文件夹中所有的文件或者是特定后缀的文件

由于经常有读取一个文件夹中的很多随机编号的文件,很多时候需要读取某些特定格式的所有文件。 下面的代码可以读取指定文件家中的所有文件和文件夹中格式为jpg的文件 参考:http://www.2cto...
  • adong76
  • adong76
  • 2014年09月20日 15:47
  • 10619
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:chunkAnalyse:C++下读取指定文件下的指定文件或文件
举报原因:
原因补充:

(最多只允许输入30个字)