delphi 壓縮和解壓文件


需要引入system.ZLib包

procedure TFormMain1.Button25Click(Sender: TObject);   //壓縮
var
  LInput, LOutput: TFileStream;
  LZip: TZCompressionStream;
begin
  inherited;
  LInput := TFileStream.Create(Edit2.Text, fmOpenRead);   //需要壓縮的文件
  LOutput := TFileStream.Create(Edit3.Text + '.zip', fmCreate);  //壓縮完成的文件
  LZip := TZCompressionStream.Create(LOutput);

  LZip.CopyFrom(LInput, LInput.Size);

  LZip.Free;
  LInput.Free;
  LOutput.Free;

end;

procedure TFormMain1.Button26Click(Sender: TObject);   //解壓
var
  LInput, LOutput: TFileStream;
  LUnZip: TZDecompressionStream;

begin
  { Create the Input, Output, and Decompressed streams. }
  LInput := TFileStream.Create(Edit2.Text, fmOpenRead);  //解壓的文件
  LOutput := TFileStream.Create(ChangeFileExt(Edit3.Text, '.txt'), fmCreate);  //解壓后的文件
  LUnZip := TZDecompressionStream.Create(LInput);

  { Decompress data. }
  LOutput.CopyFrom(LUnZip, 0);

  { Free the streams. }
  LUnZip.Free;
  LInput.Free;
  LOutput.Free;
end;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM