Класс-обёртка для работы с zlib-архивами

Сжатие данных используется практически повсеместно, и разработчику полезно иметь под рукой удобный инструмент для работы с архивами. Среди разработчиков на Delphi особенно популярен формат zlib, основанный на одноимённой OpenSource-библиотеке. Однако в Lazarus не очень удобные штатные средства для работы с этой библиотекой, и к тому же используется портированная на Pascal старая версия кода zlib.

Предлагаю вашему вниманию класс-обёртку для zlib, основанный на оригинальном С-коде библиотеки (к классу подключаются откомпилированные бинарные файлы zlib). Кроме того, в данном классе используются адаптированные к Lazarus/FreePascal функции для удобного вызова zlib, основанные на коде библиотеки JEDI для Delphi.

В общем, предлагаю скачать Lazarus Zlib 1.2.5. А вот самый простой вариант использования данной библиотеки:

uses zlibfunc;

// Сжатие одиночного файла
CompressFile(SourceFile: string, PackedFile: string);

// Сжатие заданного каталога
procedure CompressDirectory(const Directory: string; Recursive: Boolean; const FileName: string);

// Распаковка zlib-архива в заданный каталог
DecompressFile(PackedFile: string, UnPackedFile: string);

PS. Исходный код lazarus-zlib доступен в виде репозитория на GitHub. Если у вас есть желание поучаствовать в разработке — присоединяйтесь!

Теги:,

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *