#ifndef class_scandir_h #define class_scandir_h #include #include #include using namespace std; class ScanDir { private: string pfad; list files; list directory; public: void setPfad(string & _Pfad); string getPfad(); list getFiles(); list getDirectory(); void scan(string & _findthis); }; void ScanDir::setPfad(string & _Pfad) { pfad = _Pfad; } inline string ScanDir::getPfad() { return pfad; } inline list ScanDir::getFiles() { return files; } inline list ScanDir::getDirectory() { return directory; } void ScanDir::scan(string & _findthis) { struct ffblk ffblk; int done; done = findfirst((pfad + "\\" + _findthis).c_str(),&ffblk,FA_DIREC|FA_HIDDEN|FA_RDONLY|FA_SYSTEM|FA_DIREC|FA_ARCH); while (!done) { long a; a = ffblk.ff_attrib; if(( a & FA_DIREC) == FA_DIREC) directory.push_back(ffblk.ff_name); else files.push_back(ffblk.ff_name); done = findnext(&ffblk); } } #endif