C++读取某个文件夹下面的子文件夹及其所有文件
来源:互联网 发布:snmp端口号及作用 编辑:程序博客网 时间:2024/06/05 08:58
下面是输出当前目录下的所有文件夹以及文件的绝对路径(当然也可以是相对路径,由输入的路径决定),下面的函数接口可以改装为单输出文件或者文件夹的接口,这是一个大方面的总接口。
#include <fstream>#include <iostream>#include <string>#include <sstream>#include <vector>using namespace std;void getAllFiles(string path, vector<string>& files){ //文件句柄 long hFile = 0; //文件信息 struct _finddata_t fileinfo; //很少用的文件信息读取结构 string p; //string类很有意思的一个赋值函数:assign(),有很多重载版本 if ((hFile = _findfirst(p.assign(path).append("\\*").c_str(), &fileinfo)) != -1) { do { if ((fileinfo.attrib & _A_SUBDIR)) //判断是否为文件夹 { if (strcmp(fileinfo.name, ".") != 0 && strcmp(fileinfo.name, "..") != 0) { files.push_back(p.assign(path).append("/").append(fileinfo.name));//保存文件夹名字 getAllFiles(p.assign(path).append("/").append(fileinfo.name), files);//递归当前文件夹 } } else //文件处理 { files.push_back(p.assign(path).append("/").append(fileinfo.name));//文件名 } } while (_findnext(hFile, &fileinfo) == 0); //寻找下一个,成功返回0,否则-1 _findclose(hFile); }}//测试void main(){ string DATA_DIR = "D:/CoderMaker/data_sets/lfw"; vector<string> files; //测试 char * DistAll = "AllFiles.txt"; getAllFiles(DATA_DIR, files);//所有文件与文件夹的路径都输出 ofstream ofn(DistAll); //输出文件流 int size = files.size(); int FaiNum = 0; ofn << size << endl; for (int i = 0; i<size; i++) { ofn << files[i] << endl; } ofn.close(); return 0;}
测试结果
阅读全文
0 0
- C++读取某个文件夹下面的子文件夹及其所有文件
- 遍历文件夹下的文件夹和子文件,遍历文件夹删除文件夹及其下面的所有子文件
- C语言读取指定文件夹下面的所有文件
- 递归删除某个文件夹下面的所有文件和文件夹
- 读取某个文件夹下的所有文件
- 读取某个文件夹下的所有文件
- Android 读取手机某个文件夹目录及子文件夹中所有的txt文件
- MATLAB读取文件夹及其所有子文件夹内的图像
- File遍历某个文件夹下面的所有文件
- 循环遍历某个文件夹下面的所有文件,递归方法
- python 查找文件夹下面的所有文件,读取文件
- Linux C 读取文件夹下所有文件(包括子文件夹)的文件名
- Linux C 读取文件夹下所有文件(包括子文件夹)的文件名
- Linux C 读取文件夹下所有文件(包括子文件夹)的文件名
- Linux C 读取文件夹下所有文件(包括子文件夹)的文件名(转载)
- Linux C 读取文件夹下所有文件(包括子文件夹)的文件名
- Linux C 读取文件夹下所有文件(包括子文件夹)的文件名
- windows下读取一个文件夹下面所有文件的名字
- CoreOS实践指南(七):Docker容器管理服务
- TreeViewer应用实例(ITreeContentProvider与LabelProvider的使用)
- java常用的设计模式
- 最优化算法(二)
- Docker
- C++读取某个文件夹下面的子文件夹及其所有文件
- ios内存管理
- 剩蛋开博致辞
- 文章标题
- Oracle 12c 没有scott 解决方法
- IC AND IC_CF
- PHP面试总结-1
- android binder proxy
- Qt之文件操作QFile于QFileInfo