zoukankan      html  css  js  c++  java
  • 使用C++获取文件夹中所有文件名

    <pre name="code" class="cpp">#include <string>  
    #include <io.h>  
    #include <vector>  
    #include <iostream>  
    using namespace std;  
    char * filePath = "E:\图片"; 
    vector<string> files;  
    ////获取该路径下的所有文件  
    void getFiles( string path, string ext,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),ext, files );  
                }  
                else  
                {  
    				string s=p.assign(path).append("\").append(fileinfo.name);  //获取此文件的完整路径
    				char fileDrive[_MAX_DRIVE];
    				char fileDir[_MAX_DIR];
    				char fileName[_MAX_FNAME];
    				char fileExt[_MAX_EXT];
    				_splitpath(s.c_str(),fileDrive,fileDir,fileName,fileExt);  //将完整路径分解
    				if(strcmp(fileExt,ext.c_str())==0)  //筛选出符合后缀条件的文件
    				{
                        files.push_back(p.assign(path).append("\").append(fileinfo.name) ); 
    				}
                     
                }  
            }while(_findnext(hFile, &fileinfo)  == 0);  
            _findclose(hFile);  
        }  
    }  
    void main()
    {
    	string s;
    	s=".jpg";
       getFiles(filePath,s,files );  
       char str[30];  
       int size = files.size();  
       for (int i = 0;i < size;i++)  
       {  
          cout<<files[i].c_str()<<endl;  
       }  
    }


    
    
  • 相关阅读:
    Mac下github项目检出与提交
    Mac下Vim配置语法高亮
    Mac下JDK安装配置
    shiro实现app和web统一登录
    mysql优化30条建议
    log4j配置说明
    lambda遍历的精简
    lambda表达式详解
    dubbo
    java8新特性lamda表达式在集合中的使用
  • 原文地址:https://www.cnblogs.com/zztong/p/6695280.html
Copyright © 2011-2022 走看看