|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
|
[linux/c]che file è?
voglio una lista di tutti i file che ho dentro una dir, escludendo le directory e altre cose strane.
ho scritto questo codice: Codice:
vector<string>& FileUtils::listFile(string dirName){ vector<string>* fileList = new vector<string>; string fileName; DIR * dir; struct stat data; struct dirent * direntry ; if((dir = opendir(dirName.c_str())) == NULL){ throw FileException(); } fchdir(dirfd(dir)); while ((direntry = readdir (dir)) != NULL ){ stat(direntry->d_name, &data); if(dirent->d_type == DT_REG){ fileName = direntry->d_name; fileList->push_back(fileName); } } closedir(dir); return *fileList; } che sbaglio? grazie, ciao! |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Mar 2003
Messaggi: 545
|
Quote:
__________________
Linux Registered User Linux Registered Machine |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
|
si, ho sbagliato a ricopiare. comunque sul mio pc è corretto e non va
![]() ciao! |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
|
uppete!!!
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Oct 2005
Città: Genova
Messaggi: 937
|
Non conosco readdir, ma visto che hai il rsultato di stat hai provato a vedere S_ISREG(data.st_mode) ?
Per maggiori info su S_ISREG fai un man di stat (per la mia distro nella sezione "2" di man) Ciao, Mr Hyde
__________________
MacMini Late 2009/MacMini 2018 |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 02:12.