2016-09-01 4 views
0

Как я должен обработать большое количество файлов, я хотел бы показать прогресс этого процесса.Как быстро подсчитать большой набор файлов

Я знаю, что итерация с использованием QDirIterator::next() - лучший вариант, но сначала мне нужно знать общее количество файлов в каталоге (и всех его подкаталогах).

Что такое самый быстрый способ подсчета большого набора файлов?

+0

Возможный дубликат [Counting файл в директории] (http://stackoverflow.com/questions/6890757/counting-file-in-a-directory) – demonplus

ответ

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; 
+0

Thx. Но я не упомянул одну деталь: мне нужно считать только файлы с заданным расширением ... Например, подсчитайте все * .jpg в каталоге и все его подкаталоги. – paws

+0

Обновленный отредактированный ответ – Amol

+0

Я надеялся, что существует более быстрый способ найти количество файлов с заданным расширением, однако большое вам спасибо за ваше время! – paws

Смежные вопросы