首页 技术 正文
技术 2022年11月15日
0 收藏 974 点赞 3,831 浏览 891 个字

1.假设本地 d:/ 下存放着0.txt,1.txt两个文件

2.开发工具VS,开发语言C++,怎么遍历得到两个文件呢?

废话不多,具体代码请看下面:

/**

* 入参:文件存放文件夹路径,例如D:\\

* 出参:每个文件绝对路径数组

**/

vector<CString> MyFile::listFiles(const char* dir)

{

  HANDLE h;   //文件句柄

  WIN32_FIND_DATA findData;   //查找到的文件信息结构

  char dirTmp[200];

  strcpy(dirTmp,dir);

  strcat(dirTmp,”*.*”);   //使用通配符,和传入参数组成一个待遍历的路径

  vector<CString> fileList;   //此处用string就会使存入值变为乱码,所以用CString

  h = FindFirstFileA(dirTmp,&findData);  //开始遍历

  do{

    if(findData.dwFileAttributes&_A_SUBDIR || findData.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY || strcmp(findData.cFileName,”.”) == 0 || strcmp(findData.cFileName,”..”) == 0)

    {

      //log(INFO,”是目录,目录名:%s”,findData.cFileName);

    }

    else

    {

      FILE *fp;

      strcpy(dirTmp,dir);

      strcat(dirTmp,findData.cFileName);  //将找到的文件名和传入路径组成一个绝对路径

      fileList.push_back(dirTmp);  //绝对路径存入vector(其实就是一个数组)

    }

   }while(FindNextFileA(h,&findData));

  FindClose(h);

  return fileList;

}

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,954
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,479
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,291
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,108
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,740
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,774