поддержка библиотеки сжатия ZLib

В Delphi 7 официально включена . Если у вас более старшая версия посмотрите модули ZLib в дестрибутиве среды (они должны быть на диске но подключать прийдеться самому).
Библиотеки под разные платформы, среды разработок и документация на сайте www.gzip.org/zlib.
Степень сжатия превосходит алгоритм zip. Максимальная степень сжатия по алгоритму ZLib приближается к степени сжатия упаковщиком RAR.
Модули Zlib, ZlibConst.
При использовании необходимо подключить в описании Uses модуль ZLib.
пример использования:
Компресия одного потока в другой:

ComressStream( aSource, aTarget : TStream; compressionRate : TCompressionLevel );

var comprStream : TCompressionStream;

begin

  // compression level : (clNone, clFastest, clDefault, clMax)

  comprStream := TCompressionStream.Create( compressionRate, aTarget );

 try

  comprStream.CopyFrom( aSource, aSource.Size );

  comprStream.CompressionRate;

 finally

  comprStream.Free;

 End;

End;

Декомпресия одного потока в другой:

DecompressStream(aSource, aTarget: TStream);

var decompStream : TDecompressionStream;

  nRead : Integer;

  buffer : array[0..1023] of Char;

begin

  decompStream := TDecompressionStream.Create( aSource );

 try

  repeat

  nRead:=decompStream.Read( buffer, 1024 );

  aTarget.Write( buffer, nRead );

  Until nRead = 0;

 finally

  decompStream.Free;

 End;

End;

Автор RoboSol

Взято из http://forum.sources.ru

Отправить комментарий

Проверка
Антиспам проверка
Image CAPTCHA
...