Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Сортировка файлов по размеру в Delphi 2010

Delphi , Базы данных , Сортировка и Фильтр

В статье рассматривается вопрос сортировки списка файлов по размеру в среде программирования Delphi 2010. Автор вопроса уже получил размеры, даты создания и пути к файлам, но испытывает трудности с сортировкой. Результаты текущего состояния представлены в следующем виде:

MB 57.682 (60483584) - 08-06-2017 15:03 - o:\Thumbs.db

MB 4.217 (4422144) - 08-06-2017 13:48 - o:\bmp\Thumbs.db

Необходимо отсортировать данные в порядке убывания от большего файла к меньшему и сохранить результат в файл. Автор использует строки для форматирования размера файлов для удобного чтения.

Вопрос автора: какой подход использовать в данной ситуации? Нужно ли хранить данные в виде значений CSV и затем сортировать их? Или использовать StringList?

Ниже представлен код, который автор использует для решения задачи:

procedure FasterSubFilesList_mmg(folder, exts: string; files: TStrings);
// ...

Для решения задачи можно использовать метод CustomSort TStringList, предоставив пользовательскую функцию сравнения, чтобы указать, какой файл больше другого.

function FileGreater(FileList: TStringList; Index1, Index2: integer): integer;
// ...

Теперь можно вызвать:

FileList.CustomSort(FileGreater);

Примечание: как отметил David Heffernan в комментарии, StrToInt возвращает LongInt, поэтому данное решение будет работать только для файлов до 2 ГБ. Более надежным решением было бы использовать правильную структуру для хранения данных о файлах вместо этого быстрого исправления.

Создано по материалам из источника по ссылке.

В статье описывается проблема сортировки списка файлов по размеру в программировании на Delphi 2010, где автор уже получил размеры, даты создания и пути к файлам, но столкнулся с трудностями при сортировке. Необходимо отсортировать файлы в порядке убывани


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Сортировка и Фильтр ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-01-28 07:08:30/0.004857063293457/1