使用7z压缩解压数据
来源:互联网 发布:淘宝分享有礼在哪里看 编辑:程序博客网 时间:2024/05/01 22:21
1、下载sevenzip.pas,添加到lib路径
2、把7z.dll复制到你工程的目录下
3、例子代码
procedure Encode_7z( Source:TStream;Dest:TStream );
var
Arch: I7zOutArchive;
tmsStream:TMemoryStream;
begin
Arch := CreateOutArchive(CLSID_CFormat7z);
Arch.AddStream( Source, soReference, faArchive, CurrentFileTime, CurrentFileTime, '1.bmp', false, false);
SetCompressionLevel(Arch, 5);
Arch.SaveToStream(Dest);
end;
procedure Decode_7z( Source:TStream;Dest:TStream );
var
i:Integer;
tmsStream:TMemoryStream;
begin
with CreateInArchive(CLSID_CFormat7z) do
begin
OpenStream( T7zStream.Create( Source,soReference ) );
for i := 0 to NumberOfItems - 1 do
if not ItemIsFolder[i] then
ExtractItem(i, Dest, false);
end;
end;
//压缩
procedure TForm1.btn1Click(Sender: TObject);
var
tfsStream:TFileStream;
tmsStream:TMemoryStream;
begin
tfsStream:=TFileStream.Create('f:/1.bmp',fmOpenRead);
tmsStream:=TMemoryStream.Create;
Encode_7z(tfsStream,tmsStream);
tmsStream.SaveToFile('d:/1.dat.7z');
tfsStream.Free;
tmsStream.free;
end;
procedure TForm1.btn2Click(Sender: TObject);
var
tfsStream:TFileStream;
tmsStream:TMemoryStream;
begin
tfsStream:=TFileStream.Create('d:/1.dat.7z',fmOpenRead);
tmsStream:=TMemoryStream.Create;
Decode_7z(tfsStream,tmsStream);
tmsStream.SaveToFile('d:/1.bmp');
tfsStream.Free;
tmsStream.free;
end;
- 使用7z压缩解压数据
- 使用7Z开源SDK压缩解压数据(LzmaCompress、LzmaUncompress)
- 7z 压缩解压工具使用--命令行
- 7z 压缩解压工具使用--命令行
- ubuntu 解压7z压缩包
- 7z命令行快速压缩/解压
- 命令行压缩解压一 7z
- Java解压.7z格式压缩包
- 使用压缩流压缩和解压数据
- 使用chilkat解压.Z(unix压缩格式)的压缩文件
- 压缩解压:tar zip unzip 7z|7za rar
- ubuntu下7z文件的压缩与解压
- 7z 命令行 进行单文件极限压缩与解压
- 7z压缩和解压的方法--java
- 一个封装了 7z 压缩解压功能的接口
- java解压7z格式的压缩包
- Java调用shell命令解压.7z压缩包
- Delphi 7zip 示例调用7z.dll 压缩及解压.7z文件
- 异常的回想
- 線上 C# 與 VB.NET 互轉工具
- 还原DB2备份
- 【疑问】c语言中变量的集中定义问题
- 还原数据库,获得独占访问权
- 使用7z压缩解压数据
- 热血中年?
- Ogre粒子编辑器 ParticleEditor 使用
- 电子杂志的制作
- Independent Computing Architecture (ICA)
- mimibb最新
- Textbox回车时触发TextChanged的却触发其他Button的click的问题
- oracle 存储过程异常处理
- How to customize a link at your desktop in LINUX