中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++怎么遍歷文件夾目錄

發布時間:2020-08-03 11:44:43 來源:億速云 閱讀:186 作者:小豬 欄目:編程語言

小編這次要給大家分享的是C++怎么遍歷文件夾目錄,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

一、方法一:VS2019

// dirlist.cpp : 定義控制臺應用程序的入口點。

//#include "stdafx.h"
#include <string>
#include <io.h>
#include <vector>
#include <iostream>

using namespace std;

/************************************************************************/
/* 獲取文件夾下所有文件名
輸入:
path : 文件夾路徑
exd :  所要獲取的文件名后綴,如jpg、png等;如果希望獲取所有
文件名, exd = ""或"*"
輸出:
files : 獲取的文件名列表
shao, 20140707
*/
/************************************************************************/
void getFiles(string path, string exd, vector<string>& files)
{
 //cout << "getFiles()" << path<< endl; 
 //文件句柄
 long  hFile = 0;
 //文件信息
 struct _finddata_t fileinfo;
 string pathName, exdName;

 if (0 != strcmp(exd.c_str(), ""))
 {
 exdName = "\\*." + exd;
 }
 else
 {
 exdName = "\\*";
 }

 if ((hFile = _findfirst(pathName.assign(path).append(exdName).c_str(), &fileinfo)) != -1)
 {
 do
 {
  //cout << fileinfo.name << endl; 

  //如果是文件夾中仍有文件夾,迭代之
  //如果不是,加入列表
  if ((fileinfo.attrib & _A_SUBDIR))
  {
  if (strcmp(fileinfo.name, ".") != 0 && strcmp(fileinfo.name, "..") != 0)
   getFiles(pathName.assign(path).append("\\").append(fileinfo.name), exd, files);
  }
  else
  {
  if (strcmp(fileinfo.name, ".") != 0 && strcmp(fileinfo.name, "..") != 0)
   files.push_back(pathName.assign(path).append("\\").append(fileinfo.name));
  }
 } while (_findnext(hFile, &fileinfo) == 0);
 _findclose(hFile);
 }
}

void main()
{
 cout << "start list" << endl;
 vector<string> files;
 const char* filePath = "D:\\opencv_4.1.0\\newbuild\\install\\x64\\vc16\\lib";

 //獲取該路徑下的所有jpg文件
 //getFiles(filePath, "jpg", files);

 //獲取該路徑下的所有lib文件
 getFiles(filePath, "lib", files);

 //列表文件輸出路徑
 FILE* fp;
 fopen_s(&fp, "d:\\dir_list.txt", "w");

 int size = files.size();
 for (int i = 0; i < size; i++)
 {
 cout << files[i] << endl;

 fputs(files[i].c_str(), fp);
 fputs("\n", fp);

 }
 fclose(fp);

 cout << "end list" << endl;
 getchar();

}

二、方法二:CMD

win+r調出“運行”窗口并輸出cmd
輸入:cd /d D:\opencv_4.1.0\newbuild\install\x64\vc16\lib 回車 (填自己的路徑)
輸入:dir /b *.lib *>0.txt 回車 

看完這篇關于C++怎么遍歷文件夾目錄的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

双辽市| 赣榆县| 柳河县| 葫芦岛市| 都江堰市| 柳江县| 五常市| 同江市| 奈曼旗| 庆城县| 临澧县| 大庆市| 遵义县| 蒙阴县| 屏边| 随州市| 五家渠市| 横峰县| 周至县| 手机| 宁国市| 布拖县| 辉南县| 文成县| 原阳县| 都匀市| 裕民县| 同江市| 九台市| 大兴区| 集安市| 道真| 轮台县| 会东县| 萍乡市| 麻江县| 通山县| 乌海市| 镇宁| 西华县| 新乐市|