win10 下 c++遍历文件夹

来源:互联网 发布:淘宝编辑图片软件 编辑:程序博客网 时间:2024/06/13 23:25

主要使用#include <io.h>库下的函数


如果 路劲句柄定义为long类型,_findnext函数会报 访问异常,解决方法参考:http://blog.csdn.net/kelvin_yan/article/details/53997840


实例代码:

#include <fstream>#include <string>#include "utils.h"#include <stdio.h>#include <direct.h>#include <iostream>#include <io.h>using namespace std;using namespace cv;string trainPtah = "F://vido and images fro test//UIUC texture database";void getClassName(string path, vector<string>& paths){intptr_t hFile = 0;struct _finddata_t fileinfo;string p;hFile = _findfirst(p.assign(path).append("\\*").c_str(), &fileinfo);if (hFile != -1) {while (_findnext(hFile, &fileinfo) == 0) {if (fileinfo.attrib & _A_SUBDIR) {if (strcmp(fileinfo.name, ".") != 0 && strcmp(fileinfo.name, "..") != 0) {paths.push_back(p.assign(path).append("/").append(fileinfo.name));//保存文件夹名字}}}}}void main(){vector<string> paths;getClassName(trainPtah, paths);for (int i = 0; i < paths.size(); i++) {cout << paths.at(i) << endl;}system("pause");}


原创粉丝点击