當前位置:
首頁 >
获取指定路径下的所有文件
發布時間:2025/3/15
35
豆豆
生活随笔
收集整理的這篇文章主要介紹了
获取指定路径下的所有文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
windows版本
參考https://www.cnblogs.com/wqpkita/p/6849283.html
// windows下遍歷指定目錄下的所有文件 void listFiles(const char * dir) {char dirNew[200];strcpy(dirNew, dir);strcat(dirNew, "\\*.*"); // 在目錄后面加上"\\*.*"進行第一次搜索intptr_t handle;_finddata_t findData;handle = _findfirst(dirNew, &findData);if (handle == -1) // 檢查是否成功return;do{if (findData.attrib & _A_SUBDIR){// 去除.和..目錄,.表示當前目錄,..表示上一級目錄if (strcmp(findData.name, ".") == 0 || strcmp(findData.name, "..") == 0)continue;cout << findData.name << "\t<dir>\n";}elsecout << findData.name << "\t" << findData.size << " bytes.\n";} while (_findnext(handle, &findData) == 0);_findclose(handle); // 關閉搜索句柄 }Linux版本
#include <iostream> #include <unistd.h> #include <string> #include <string.h> #include <stdio.h> #include "fstream" #include <dirent.h>int main() {char *thisDirectory = NULL;// 獲取當前路徑if ( ( thisDirectory = getcwd( NULL, 0 ) ) == NULL ){cout << "get this directory error" << endl;}else {cout << thisDirectory << endl;// 指向父目錄strcat(thisDirectory, "/..");}// linux在指定目錄下遍歷所有文件DIR * dir = opendir(thisDirectory); //打開一個目錄dirent * ptr;while((ptr = readdir(dir)) != NULL) //循環讀取目錄數據{// 去除.和..目錄if (strcmp(ptr->d_name, ".") == 0 || strcmp(ptr->d_name, "..") == 0)continue;cout << ptr->d_name << endl;}closedir(dir);//關閉目錄指針 }?
總結
以上是生活随笔為你收集整理的获取指定路径下的所有文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CP-ABE公式推导笔记
- 下一篇: 报表服务扩展:基于WCF技术的报表服务扩