早上吃饭时同学问我怎么读若干个同样格式的文件,我说把文件名都改成有规律的比如1.txt,2.txt,3.txt……然后修改string,他又问我怎么修改,想起解释起来也比较麻烦,而且这方法其实不是很好(因为要手动修改文件名)所以复习下遍历文件夹的知识。
其实我还是比较常用MFC的所以直接用WIN32_FIND_DATA结构体,对应宽字节的为WIN32_FIND_DATAW。才发现控制台下可以用MFC类库于是直接写控制台程序了,在VS2012下勾选添加公共头文件以用于MFC即可。
#include <string>
#include <vector>
#include <cstring>
#include <algorithm>
//中间为自动生成代码
//main函数内
//遍历文件夹
WIN32_FIND_DATAA data;
string strPathFileFolder("F:\\测试"); //文件夹路径
string curr = strPathFileFolder + "\\*.*";
vector<string> vFileName; //文件夹下文件名
//找到文件夹起始句柄
HANDLE hError = ::FindFirstFileA(curr.c_str(), &d