遍历C++某目录下的所有文件(Windows)
本文代码在VS2019测试通过,不代表其他编译器也能通过。(比如我的Vscode用的是Mingw编译器,就无法使用该代码)
文件信息结构体_finddata_t:
_findfirst函数:
利用_findfirst找到第一个文件, 返回一个文件句柄,可以作为其他函数的参数。并将文件名匹配由 _fileName 指定模式的第一个文件的信息保存在_FindData 里。
#pragma warning(disable:4996) #include <iostream> #include<istream> #include <string> #include <cctype> #include<vector> #include<list> #include<cstring> #include<random> #include<typeinfo> #include<set> #include<map> #include<deque> #include<regex> #include<sstream> #include<cstdlib> #include<queue> #include<stdlib.h> #include<stdio.h> #include<stack> #include<algorithm> #include<thread> #include<mutex> #include<assert.h> #include<fstream> #include<unordered_map> #include<unordered_set> #include<thread> using namespace std; #include <io.h> int main() { struct _finddata_t fileinfo; long hFile; if ((hFile = _findfirst("D:\\其它软件\\QQMusic\\*.dll", &fileinfo)) == -1) return -1; else { do { cout << fileinfo.name << " " << fileinfo.size << " " << fileinfo.time_create << endl; } while (_findnext(hFile, &fileinfo) == 0); } _findclose(hFile); getchar(); return 0; }
输出:
进击的小🐴农