您的位置:首页 > 编程语言 > C语言/C++

C++ 获取文件夹下的所有文件名

2014-12-23 21:44 501 查看
留着以后用,转载别人的转载:点击打开链接

头文件:#include<io.h>

[html] view
plaincopy





char * filePath = "D:\\sample";

[html] view
plaincopy





vector<string> files;

////获取该路径下的所有文件

getFiles(filePath, files );

char str[30];

int size = files.size();

for (int i = 0;i < size;i++)

{

cout<<files[i].c_str()<<endl;

}

[html] view
plaincopy





void getFiles( string path, vector<string>& files )

{

//文件句柄

long hFile = 0;

//文件信息

struct _finddata_t fileinfo;

string p;

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)

getFiles( p.assign(path).append("\\").append(fileinfo.name), files );

}

else

{

files.push_back(p.assign(path).append("\\").append(fileinfo.name) );

}

}while(_findnext(hFile, &fileinfo) == 0);

_findclose(hFile);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: