2011-07-15 79 views
11

當我這樣做:在QT中只獲取文件但不能獲取目錄?

QDir myDir("/home/some/location"); 
QStringList filesList = myDir.entryList("*"); 

它返回兩個文件和位置中的目錄。但我只想要文件。這些文件可以有任意的擴展名。有任何想法嗎?

回答

10

使用 QDir::entryInfoList返回QFileInfo objectsd的列表,然後檢查他們每個人的狀態,你也可以使用過濾器,只返回文件的列表/和/或迪爾斯

+0

好的,這工作! – Mahesh

4

使用此

QDir recoredDir("YOUR DIRECTORY"); 
    QStringList allFiles = recoredDir.entryList(QDir::NoDotAndDotDot | QDir::System | QDir::Hidden | QDir::AllDirs | QDir::Files, QDir::DirsFirst);//(QDir::Filter::Files,QDir::SortFlag::NoSort) 

;

+0

這也得到目錄(在我的Windows機器上) – James

+0

在黑莓10設備中,它將只返回文件。 – pranavjayadev