最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++獲取指定目錄下的所有文件

 更新時間:2017年06月12日 16:32:01   作者:whlook  
這篇文章主要為大家詳細介紹了C++獲取指定目錄下所有文件的相關(guān)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了C++獲取指定目錄下所有文件的具體代碼,供大家參考,具體內(nèi)容如下

1.獲得指定目錄下的所有文件(不搜索子文件夾)

需要包含的頭文件

#include <io.h>
#include <string>
#include <vector>
#include <fstream>

函數(shù)實現(xiàn)

void getAllFiles(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 {
      // 保存文件的全路徑
      files.push_back(p.assign(path).append("\\").append(fileinfo.name));

      } while (_findnext(hFile, &fileinfo) == 0); //尋找下一個,成功返回0,否則-1

    _findclose(hFile);
  }
}

2.獲取指定目錄下的所有文件(搜索子文件夾)

void getAllFiles(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) {
          files.push_back(p.assign(path).append("\\").append(fileinfo.name));
          //遞歸搜索
          getAllFiles(p.assign(path).append("\\").append(fileinfo.name), files);
        }
      }
      else {
        files.push_back(p.assign(path).append("\\").append(fileinfo.name));
      }
    } while (_findnext(hFile, &fileinfo) == 0); //尋找下一個,成功返回0,否則-1
    _findclose(hFile);
  }
}

3.獲取指定格式的文件(不搜索子文件夾)

/*
path: 指定目錄
files: 保存結(jié)果
fileType: 指定的文件格式,如 .jpg
*/
void getAllFiles(string path, vector<string>& files,string fileType) 
{
  // 文件句柄
  long hFile = 0;
  // 文件信息
  struct _finddata_t fileinfo; 

  string p;

  if ((hFile = _findfirst(p.assign(path).append("\\*" + fileType).c_str(), &fileinfo)) != -1) {
    do {
      // 保存文件的全路徑
      files.push_back(p.assign(path).append("\\").append(fileinfo.name));

      } while (_findnext(hFile, &fileinfo) == 0); //尋找下一個,成功返回0,否則-1

    _findclose(hFile);
  }
}

4.測試

int main(int argc, char** argv)
{
  vector<string> temp;
  getAllFiles("J:\\faces\\test", temp,".jpg");
  for (int i = 0; i < temp.size();++i )
  {
    cout << temp[i] << endl;
  }
  return 0;
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C語言?詳解如何刪除有序數(shù)組中的重復(fù)項

    C語言?詳解如何刪除有序數(shù)組中的重復(fù)項

    數(shù)組不擅長插入(添加)和刪除元素。數(shù)組的優(yōu)點在于它是連續(xù)的,所以查找數(shù)據(jù)速度很快。但這也是它的一個缺點。正因為它是連續(xù)的,所以當插入一個元素時,插入點后所有的元素全部都要向后移;而刪除一個元素時,刪除點后所有的元素全部都要向前移
    2022-03-03
  • 利用C語言實踐OOP,以及new,delete的深入分析

    利用C語言實踐OOP,以及new,delete的深入分析

    本篇文章是對用C語言實踐OOP,new,delete進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C++依賴倒轉(zhuǎn)原則和里氏代換原則有什么好處

    C++依賴倒轉(zhuǎn)原則和里氏代換原則有什么好處

    設(shè)計模式(Design pattern)代表了最佳的實踐,通常被有經(jīng)驗的面向?qū)ο蟮能浖_發(fā)人員所采用。設(shè)計模式是軟件開發(fā)人員在軟件開發(fā)過程中面臨的一般問題的解決方案。本篇介紹設(shè)計模式七大原則之一的依賴倒轉(zhuǎn)原則
    2023-02-02
  • C++?pimpl機制詳細講解

    C++?pimpl機制詳細講解

    PIMPL?是?C++?中的一個編程技巧,意思為指向?qū)崿F(xiàn)的指針。具體操作是把類的實現(xiàn)細節(jié)放到一個單獨的類中,并用一個指針進行訪問
    2022-08-08
  • C++實現(xiàn)趣味掃雷游戲

    C++實現(xiàn)趣味掃雷游戲

    這篇文章主要為大家詳細介紹了C++實現(xiàn)趣味掃雷游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C++中類的構(gòu)造函數(shù)初始值列表解讀

    C++中類的構(gòu)造函數(shù)初始值列表解讀

    這篇文章主要介紹了C++中類的構(gòu)造函數(shù)初始值列表,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • C語言位圖算法詳解

    C語言位圖算法詳解

    這篇文章主要介紹了C語言實現(xiàn)的位圖算法,主要包括了位圖算法的定義與應(yīng)用,對于C程序算法設(shè)計的學(xué)習(xí)有一定的借鑒價值,需要的朋友可以參考下
    2014-09-09
  • C++中vector的用法實例解析

    C++中vector的用法實例解析

    這篇文章主要介紹了C++中vector的用法,詳細描述了vector的各種常見的用法及注意事項,需要的朋友可以參考下
    2014-08-08
  • Qt讀取Json文件的方法詳解(含源碼+注釋)

    Qt讀取Json文件的方法詳解(含源碼+注釋)

    QT本身就有讀取json的接口,簡單又方便,下面這篇文章主要給大家介紹了關(guān)于Qt讀取Json文件(含源碼+注釋)的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-10-10
  • VisualStudio2019配置OpenCV的詳細過程

    VisualStudio2019配置OpenCV的詳細過程

    這篇文章主要介紹了VisualStudio2019配置OpenCV,配置系統(tǒng)環(huán)境找到高級系統(tǒng)設(shè)置等一系列操作,本文分步驟通過圖文并茂的形式給大家介紹的非常詳細,需要的朋友可以參考下
    2022-01-01

最新評論

台北县| 富宁县| 古蔺县| 罗城| 拜城县| 济阳县| 凤冈县| 朔州市| 寿阳县| 磴口县| 张家口市| 五华县| 米林县| 大丰市| 菏泽市| 绥化市| 大洼县| 定襄县| 玉田县| 清河县| 上虞市| 乡宁县| 二手房| 梧州市| 界首市| 德令哈市| 玉山县| 元谋县| 北安市| 二连浩特市| 郧西县| 青阳县| 石阡县| 延安市| 永丰县| 楚雄市| 青龙| 桐庐县| 庆阳市| 亚东县| 怀集县|