Ver Mensaje Individual
  #14  
Antiguo 07-06-2008
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Reputación: 21
Delfino Va por buen camino
Las funciones de la libreria hablan por si mismo, pero googleando encontre este ejemplo, q se puede personalizar..
Código Delphi [-]
 program ZLibTest;
{$APPTYPE CONSOLE}
uses SysUtils, Classes, ZLib;
var
  FileName: String;
  CompFileStream: TStream;
  CompressionStream: TCompressionStream;
  FileStream: TStream;
  DecompressionStream: TDecompressionStream;
  Buffer: Array[0..4095] of Char;
  BufLen: Integer;
begin
  if ParamCount < 1 then Halt;
  FileName := ParamStr(1);
  Write('Compressing ',FileName,' ... ');
  FileStream := TFileStream.Create(FileName,fmOpenRead OR fmShareDenyWrite);
  CompFileStream := TFileStream.Create(FileName+'.compress',fmCreate);
  CompressionStream := TCompressionStream.Create(clDefault,CompFileStream);
  CompressionStream.CopyFrom(FileStream,0);
  CompressionStream.Free;
  CompFileStream.Free;
  FileStream.Free;
  Writeln('Done');
  Write('Decompressing ',FileName,'.compress ... ');
  CompFileStream := TFileStream.Create(FileName+'.compress', fmOpenRead OR fmShareDenyWrite);
  FileStream := TFileStream.Create(FileName+'.uncompress', fmCreate);
  DecompressionStream := TDecompressionStream.Create(CompFileStream);
  BufLen := DecompressionStream.Read(Buffer,SizeOf(Buffer));
  while BufLen > 0 do
    begin
    FileStream.Write(Buffer,BufLen);
    BufLen := DecompressionStream.Read(Buffer,SizeOf(Buffer));
    end;
  DecompressionStream.Free;
  FileStream.Free;
  CompFileStream.Free;
  Writeln('Done');
  Readln;
end.
__________________
¿Microsoft? No, gracias..
Responder Con Cita