获取目录下所有的文件

/******获取目录下所有的文件*****/
#include<iostream>
#include<string>
#include <direct.h>
#include<vector>
#include "io.h"


const int MAX_PATH = 260;
enum { RETURN_ERROR = -1, RETURN_OK };


void GetFiles(const std::string& strDir, std::vector<std::string>& vecFile)
{
_finddata_t file; 
long lf; 
if (RETURN_ERROR == (lf = _findfirst(strDir.c_str(), &file))) 
std::cout << "not found" << strDir<< std::endl;
else 

while (RETURN_OK == _findnext(lf, &file)) 

if (RETURN_OK == strcmp(file.name, ".") 
|| RETURN_OK == strcmp(file.name, "..")) 
continue; 
if (file.attrib&_A_SUBDIR) 

std::string strTmpDir(strDir.substr(0, strDir.length() - 1) + file.name + "\\*");
GetFiles(strTmpDir, vecFile); 

else 
vecFile.push_back(file.name);

}
_findclose(lf);
}


int main()
{
char szPath[MAX_PATH] = { 0 };
_getcwd(szPath, MAX_PATH);
strncat_s(szPath, "\\*", MAX_PATH);
std::vector<std::string> vecFile; 
GetFiles(szPath, vecFile);
for (auto&it : vecFile)
std::cout << it << std::endl;


system("pause");
return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值