ускорение или замена QDir.entryList(), как ускорить QDir.entryList() |
Здравствуйте, гость ( Вход | Регистрация )
ускорение или замена QDir.entryList(), как ускорить QDir.entryList() |
maric2000 |
26.10.2009, 11:00
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 2 Регистрация: 26.10.2009 Пользователь №: 1179 Спасибо сказали: 0 раз(а) Репутация: 0 |
В программе требуется для заполнения таблицы многократно в цикле вызывать QDir.entryList(const QStringList & nameFilters) с разными масками файлов. Это требуется для определения числа файлов по определенной маске. Выполнение всего цикла занимает неоправданно много времени (если закомментировать строку с QDir.entryList() , то цикл проходит мгновенно). Подскажите, как ускорить entryList или если для определения числа файлов по определенной маске пользоваться другим классом ( функцией), то каким?
PS. раньше в в аналогичной программе, под С++Builder, пользовался FindFirst, FindNext все работало очень быстро. |
|
|
panter_dsd |
26.10.2009, 17:44
Сообщение
#2
|
Жаждущий знаний Группа: Участник Сообщений: 254 Регистрация: 1.1.2009 Из: Санкт-Петербург Пользователь №: 474 Спасибо сказали: 32 раз(а) Репутация: 3 |
Тогда не entryList, а entryInfoList.
|
|
|
maric2000 |
27.10.2009, 9:35
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 2 Регистрация: 26.10.2009 Пользователь №: 1179 Спасибо сказали: 0 раз(а) Репутация: 0 |
Спасибо всем! Реализовал оба варианта: и через API функции, и через заранее созданный список. Оба работают приемлемо быстро. Скачал Qt4.6 Beta1, установлю, попробую, отпишусь, исправили ли.
Программу интересуют файлы в директории следующего формата: "??????.??"; Исходный вариант ф-ии:
вариант с API:
Вариант с заранее созданным списком: В конструкторе класса или в ф-ии update:
|
|
|
Текстовая версия | Сейчас: 28.1.2025, 22:13 |