Как быстро посчитать большой набор файлов
Поскольку мне приходится обрабатывать большое количество файлов, я хотел бы показать прогресс этого процесса.
Я знаю, что итерация с использованием QDirIterator::next()
это лучший вариант, но сначала мне нужно знать общее количество файлов в каталоге (и всех его подкаталогах).
Какой самый быстрый способ подсчета большого набора файлов?
1 ответ
Решение
Используйте приведенный ниже код для подсчета всех файлов и каталогов внутри папки "opt"
QDir dir("/opt/");
dir.count();
Используйте приведенный ниже код для вывода списка файлов *.jpg в текущем и всех его подкаталогах.
QDirIterator it("/opt/", QStringList() << "*.jpg", QDir::Files, QDirIterator::Subdirectories);
int count = 0;
while (it.hasNext()){
qDebug() << it.next();
count++;
}
qDebug() << "count:" << count;