</pre><pre name="code" class="cpp"><pre name="code" class="cpp">#include <QApplication>
#include <QDir>
#include <QListWidget>
//Qt递归遍历文件夹,将所有的文件的路径加入到list中
void TraversalDirs(const QString& path, QStringList& list)
{
QStringList ret;
ret.clear();
QDir dir(path);
if(!dir.exists()) return ;
dir.setFilter(QDir::Dirs|QDir::Files);
dir.setSorting(QDir::DirsFirst);
QFileInfoList fil = dir.entryInfoList();
foreach(QFileInfo fi, fil)
{
if(fi.fileName()=="."||fi.fileName()=="..") continue;
if(fi.isDir()) TraversalDirs(fi.filePath(),list);
else list<<fi.filePath();
}
}
int main(int argc, char *argv[])
{
QApplication app(argc,argv);
QStringList sl;
TraversalDirs("D:\\Projects\\",sl);
QListWidget *listWidget = new QListWidget();
foreach(QString s, sl)
{
new QListWidgetItem(s,listWidget);
}
listWidget->show();
return app.exec();
}
Qt5 遍历文件夹
最新推荐文章于 2023-07-19 09:47:06 发布