Quantcast
Channel: QtWebEngine
Viewing all articles
Browse latest Browse all 13965

Fast solution to list directories recursively

$
0
0
Do you know a faster solution to find all of the directories by Qt(QDirIterator is too slow) QDirIterator directories(dir_, QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot, QDirIterator::Subdirectories);            QStringList dirs;           while(directories.hasNext()){                                  directories.next();                  dirs.push_back(directories.filePath());          }     //codes base on BFS(breadth first search)     QStringList scan_dir_recursive(QDir const &dir)     {       std::queue<QString> queue;       queue.push(dir.absolutePath());       QStringList results;       while (!queue.empty()) {         auto const subdir_name = queue.front();         queue.pop();         results.push_back(subdir_name);         QDir subdir(subdir_name);               auto const &directories = subdir.entryInfoList({},         QDir::AllDirs | QDir::NoSymLinks | QDir::NoDotAndDotDot);         for (auto const &data : directories) {           queue.push(data.absoluteFilePath());         }     }             return results;     }

Viewing all articles
Browse latest Browse all 13965

Trending Articles