6
我有這個代碼可以打開一個目錄並檢查列表是否不是普通文件(意味着它是一個文件夾),它也會打開它。我如何區分使用C++的文件和文件夾。 這裏是我的代碼,如果這能幫助:區分C++中的文件夾和文件
#include <sys/stat.h>
#include <cstdlib>
#include <iostream>
#include <dirent.h>
using namespace std;
int main(int argc, char** argv) {
// Pointer to a directory
DIR *pdir = NULL;
pdir = opendir(".");
struct dirent *pent = NULL;
if(pdir == NULL){
cout<<" pdir wasn't initialized properly!";
exit(8);
}
while (pent = readdir(pdir)){ // While there is still something to read
if(pent == NULL){
cout<<" pdir wasn't initialized properly!";
exit(8);
}
cout<< pent->d_name << endl;
}
return 0;
}
使用'stat'(或'lstat')不同, 'S_ISDIR'。 – 2012-02-15 20:54:31