常用函数-Linux文件操作
Posted osbreak
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用函数-Linux文件操作相关的知识,希望对你有一定的参考价值。
/************************************************************************ 函数功能:寻找文件夹下的某格式文件 std::vector<string> &filelist -- 文件名list const char *basePath -- 文件路径 string format -- 文件格式 如 .xml ************************************************************************/ int readFileList(std::vector<string> &filelist, const char *basePath, string format) { DIR *dir; struct dirent *ptr; char base[1000]; if ((dir = opendir(basePath)) == NULL) { perror("Open dir error..."); exit(1); } while ((ptr = readdir(dir)) != NULL) { if (strcmp(ptr->d_name, ".") == 0 || strcmp(ptr->d_name, "..") == 0) ///current dir OR parrent dir continue; else if (ptr->d_type == 8) //file { //printf("d_name:%s/%s ",basePath,ptr->d_name); string temp = ptr->d_name; //cout << temp << endl; string sub = temp.substr(temp.length() - 4, temp.length() - 1); //cout << sub << endl; if (sub == format) { //string path = basePath; //path += "/"; //path += ptr->d_name; filelist.push_back(ptr->d_name); } } else if (ptr->d_type == 10) ///link file { //printf("d_name:%s/%s ",basePath,ptr->d_name); } else if (ptr->d_type == 4) ///dir { memset(base, ‘