单元内主要就是 TZipFile 类,最方便使用的是它的类方法:
测试:
uses System.Zip; { 把 C:\Temp\TestDir 下的所有文件压缩到 C:\Temp\Test.zip } procedure TForm1.Button1Click(Sender: TObject); begin TZipFile.ZipDirectoryContents('C:\Temp\Test.zip','C:\Temp\TestDir\'); //参数3可以指定压缩算法 end; { 把 C:\Temp\Test.zip 解压到 C:\Temp\TestDir2\ } procedure TForm1.Button2Click(Sender: TObject); begin TZipFile.ExtractZipFile('C:\Temp\Test.zip','C:\Temp\TestDir2\'); end;
使用实例化类的方式:
uses System.Zip; { 压缩 } procedure TForm1.Button1Click(Sender: TObject); var zip: TZipFile; begin zip := TZipFile.Create; zip.Open('C:\Temp\001.zip',TZipMode.zmWrite); //准备要压缩为 001.zip zip.Add('C:\Temp\Test.txt','Test.txt'); //参1是要压缩的文件; 参2是要使用的文件名; 参数3可指定压缩算法 // zip.Add... // zip.Close; //Close 时才执行实际压缩过程; 不过在销毁前会调用它 zip.Free; end; { 解压 } procedure TForm1.Button2Click(Sender: TObject); var zip: TZipFile; begin zip := TZipFile.Create; zip.Open('C:\Temp\001.zip',TZipMode.zmRead); zip.ExtractAll('C:\Temp\002\'); zip.Free; end;
TZipFile.ExtractZipFile() //解压 Zip 文件到指定文件夹 TZipFile.IsValid() //判断指定文件是否是有效的 Zip 文件 TZipFile.ZipDirectoryContents() //压缩指定路径下的所有文件
测试:
uses System.Zip; { 把 C:\Temp\TestDir 下的所有文件压缩到 C:\Temp\Test.zip } procedure TForm1.Button1Click(Sender: TObject); begin TZipFile.ZipDirectoryContents('C:\Temp\Test.zip','C:\Temp\TestDir\'); //参数3可以指定压缩算法 end; { 把 C:\Temp\Test.zip 解压到 C:\Temp\TestDir2\ } procedure TForm1.Button2Click(Sender: TObject); begin TZipFile.ExtractZipFile('C:\Temp\Test.zip','C:\Temp\TestDir2\'); end;
使用实例化类的方式:
uses System.Zip; { 压缩 } procedure TForm1.Button1Click(Sender: TObject); var zip: TZipFile; begin zip := TZipFile.Create; zip.Open('C:\Temp\001.zip',TZipMode.zmWrite); //准备要压缩为 001.zip zip.Add('C:\Temp\Test.txt','Test.txt'); //参1是要压缩的文件; 参2是要使用的文件名; 参数3可指定压缩算法 // zip.Add... // zip.Close; //Close 时才执行实际压缩过程; 不过在销毁前会调用它 zip.Free; end; { 解压 } procedure TForm1.Button2Click(Sender: TObject); var zip: TZipFile; begin zip := TZipFile.Create; zip.Open('C:\Temp\001.zip',TZipMode.zmRead); zip.ExtractAll('C:\Temp\002\'); zip.Free; end;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。