1、 遍历某路径下的所有文件
QString svgPath = "E:\";
QDir dir(svgPath);
dir.setFilter(QDir::Files | QDir::Hidden | QDir::NoSymLinks);
dir.setSorting(QDir::Size | QDir::Reversed);
QStringList filterList;
filterList << "*.svg"; //设置筛选条件
QFileInfoList list = dir.entryInfoList(filterList);
for (int i = 0; i < list.size(); ++i)
{
QFileInfo fileInfo = list.at(i);
QTreeWidgetItem *childItem = new QTreeWidgetItem(rootItem);
childItem->setText(0,fileInfo.baseName());
}
2、遍历某路径下的所有文件夹
筛选条件改为:dir.setFilter(QDir::Dirs);
QString svgPath = "E:\";
QDir dir(svgPath);
if (!dir.exists())
{
return;
}
dir.setFilter(QDir::Dirs);
foreach(QFileInfo fullDir, dir.entryInfoList())
{
if(fullDir.fileName() == "." || fullDir.fileName() == "..")
{
continue;
}
//....todo
}
使用路径时先判断下该路径是否存在,这应该是一个习惯。