从QFilesystemmodel中查找(搜索)特定的命名文件

时间:2013-10-11 04:44:41

标签: qt qtreeview qfilesystemmodel

我是Qt的新手。我在QTreeview中使用QFileSystemModel来探索驱动器的内容。我想使用此QFileSystemModel从任何驱动器中找到特定的命名文件。现在,有没有办法从这个模型中找到该特定文件? 提前致谢。

1 个答案:

答案 0 :(得分:0)

QFileSystemModel不提供任何搜索方法。您应该使用QDirIterator代替。

QString find_file(QString dir, QString name) {
  QDirIterator it(dir, QDirIterator::Subdirectories);
  while (it.hasNext()) {
    it.next();
    if (it.fileName() == name) {
      return it.filePath();
    }
  }
  return QString();
}

您可以使用QFileSystemModel::index方法将文件路径转换为模型索引。