crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в QDir&QFile
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Алексей Дата 1.6.2010, 16:38
  Спасибо, Юрий!

Вашего-то ответа мне и хотелось услышать. Однако жаль :(
Будем надеяться, что ОСи где будет работать программа будут часть этого списка скидывать в своп.
Litkevich Yuriy Дата 1.6.2010, 16:11
  в любом случае придётся обходить все файлы, в общем случае ОСь не предоставляет готовых сведений.
Чтобы было менее прожорливо, лучше брать список файлов, а не список информации о файлах.
Ну а затем по имени просматривать свойства.
QStringList zeroFiles;
QDir dir("./");
QStringList allFiles = dir.entryInfoList("*.*", QDir::Files | QDir::NoSymLink);
foreach(QString f, allFiles){
    if(!QFileInfo(f).size())
        zeroFiles << f;
}
Алексей Дата 1.6.2010, 15:07
  Здравствуйте все!

Помогите пож-та решить одну задачу: нужно выбрать из каталога все файлы с нулевым размером.

Отсюда вопрос(ы): можно ли создать такой фильтр, который поможет сделать это, или же (если это невозможно) то как можно получать из указанного каталога файлы, так сказать, по одному, то есть не прибегая к помощи entryList&entryInfoList чтобы уже потом преобразовывать имя файла в QFile и уже выяснять его размер.

Попробую объяснить почему такие сложности: папка может хранить до 100 млн. файлов и мне кажется, что если все это осядет в QStringList, то ОЗУ бедного компьютера немножко поплохеет, так как только одни указатели QStringList'a сожрут ~400Мб оперативки.

Или я неправ?

Если у кого есть советы и предложения поделитесь пожалуйста.
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 13:23