//Windows#include<iostream>#include<string>#include <io.h>void readFileNameInDir(IN string strDir, INOUT vector<string>& vFileFullPath) { long handle;//文件句柄 struct _finddata_t fileInfo;//文件结构体 handle = _findfirst(strDir.c_str(), &fileInfo);//第一次查找,获取文件句柄 while (!_findnext(handle, &fileInfo)) { vFileFullPath.push_back(fileInfo.name) } _findclose(handle);}//readFileNameInDir()//Linux#include <string>#include <vector>#include <dirent.h>vod readFileNameInDir(IN string strDir, INOUT vector<string>& vFileFullPath) { struct dirent* pDirent; DIR* pDir = opendir(strDir.c_str()); if (pDir != NULL) { while ((pDirent = readdir(pDir)) != NULL) { string strFileName = pDirent->d_name; string strFileFullPath = strDir + "/" + strFileName; vFileFullPath.push_back(strFileFullPath); } vFileFullPath.erase(vFileFullPath.begin(), vFileFullPath.begin() + 2);//前两个存储的是当前路径和上一级路径,所以要删除 }}//readFileNameInDir()