Qt获取某目录下所有某类型的文件


 1 void ScriptConfig::updateComboBox()
 2 {
 3     QDir fromDir = "./Data";
 4     QStringList filters;
 5     filters.append("*.xls");
 6     filters.append("*.xlsx");
 7 
 8     filePathList.clear();
 9     fileNameList.clear();
10     scanData(fromDir, filters);
11 
12     ui.datacmBox->clear();
13     ui.datacmBox->addItems(fileNameList);
14 }
15 bool ScriptConfig::scanData(const QDir &fromDir, const QStringList &filters)
16 {
17     QFileInfoList fileInfoList = fromDir.entryInfoList(filters, QDir::AllDirs|QDir::Files);
18     foreach(QFileInfo fileInfo, fileInfoList)
19     {
20         if (fileInfo.fileName() == "." || fileInfo.fileName() == "..")
21             continue;
22         if (fileInfo.isDir())
23         {
24             if (!scanData(fileInfo.filePath(), filters))
25                 return false;
26         }
27         else
28         {
29             filePathList.append(fileInfo.absoluteFilePath());
30             fileNameList.append(fileInfo.fileName());
31         }
32     }
33     return true;
34 }

 

 

 

posted @ 2017-12-01 13:14  三味线、  阅读(7513)  评论(0编辑  收藏  举报