我在提类似问题的时候,有一位大侠提供了以下代码:
var inF, ouF, zpF: TStream;
buf: array[1..1024]of char;
i: integer;
begin
inF:=TFileStream.Create('Papper.ini', fmOpenRead);
ouF:=TFileStream.Create('Papper.Z', fmCreate);
zpF:=TCompressionStream.Create(clDefault, ouF);
zpF.CopyFrom(inF, 0);
zpF.Free;
inF.Free;
ouF.Free;
inF:=TFileStream.Create('Papper.Z', fmOpenRead);
ouF:=TFileStream.Create('Papper.txt', fmCreate);
zpF:=TDecompressionStream.Create(inF);
i:=zpF.Read(buf, 1024);
while i>0 do begin
ouF.Write(buf, i);
i:=zpF.Read(buf, 1024);
end;
ouF.Free;
zpF.Free;
inF.Free;
end.
我试用了,压缩部分没问题,但解压部分不对,不知该怎样改。
请参看:http://www.delphibbs.com/delphibbs/dispq.asp?LID=417753