导航:首页 > 文件教程 > delphi资源文件解压

delphi资源文件解压

发布时间:2025-05-24 04:57:51

Ⅰ delphi XE 10 解压压缩文件

没有的,可以在前端要求加个判断格式,只有ZIP的才行。或都把.rar的自己转换成zip

Ⅱ delphi的VCLZip控件的解压问题

ziper.DoAll := True;
ziper.OverwriteMode := Always;
ziper.RelativePaths:=true;//是否保持目录结构
ziper.AddDirEntriesOnRecurse:=true;
ziper.RecreateDirs:=true;//创建目录

加上这几句应该就行了。
vclzip在delphi2010中是无法使用的,在d7中可以正常使用。如果想在d2010中使用,建议在d7下把这些函数封装成dll,在2010中调用即可。

Ⅲ delphi中用zlib怎样压缩和解压

数据压缩和卖巧知解压的示例代码

{压缩流}
function CompressStream(ASrcStream: TStream; ALevel: TSfCompressionLevel): TStream;
var
SrcData,Buffer:Pointer;
BufSize:Integer;
begin
Buffer:=nil;
Result:=nil;
BufSize:=0;
GetMem(SrcData,ASrcStream.Size);
ASrcStream.Position:=0;
ASrcStream.Read(SrcData^,ASrcStream.Size);

try
try
SfCompressBuf(SrcData,ASrcStream.Size,Buffer,BufSize,ALevel);
except
on E:Exception do
SfRaiseException(E,'Exception raised in CompressStream call');
end;
finally
FreeMem(SrcData);
SrcData:=nil;
end;

//由于try...except块中重引发了异常,所以在发生了异常的情况下,以下的代码不会执行
Result:=TMemoryStream.Create;
Result.Write(Buffer^,BufSize);
FreeMem(Buffer);
end;

{解压流}
function CompressStream(ASrcStream: TStream; ALevel: TSfCompressionLevel): TStream;
var
SrcData,Buffer:Pointer;
BufSize:Integer;
begin
Buffer:=nil;
Result:=nil;
BufSize:=0;
GetMem(SrcData,ASrcStream.Size);
ASrcStream.Position:=0;
ASrcStream.Read(SrcData^,ASrcStream.Size);

try
try
SfCompressBuf(SrcData,ASrcStream.Size,Buffer,BufSize,ALevel);
except
on E:Exception do
SfRaiseException(E,'Exception raised in CompressStream call');
end;
finally
FreeMem(SrcData);
SrcData:=nil;
end;

//由于try...except块中重引发了异常,所以宽键在发生了异常的情况下,以下的代码不中消会执行
Result:=TMemoryStream.Create;
Result.Write(Buffer^,BufSize);
FreeMem(Buffer);
end;

{压缩字节数组}
function CompressBytes(ASrcBytes: TBytes; ALevel: TSfCompressionLevel): TBytes;
var
Buffer:Pointer;
BufSize:Integer;
begin
Buffer:=nil;
BufSize:=0;

try
SfCompressBuf(@ASrcBytes[0],Length(ASrcBytes),Buffer,BufSize,ALevel);
SetLength(Result,BufSize);
Move(Buffer^,Result[0],BufSize);
except
on E:Exception do
SfRaiseException(E,'Exception raised in CompressBytes call');
end;

//由于try...except块中重引发了异常,所以在发生了异常的情况下,以下的代码不会执行
FreeMem(Buffer);
end;

{解压字节数组}
function DecompressBytes(ASrcBytes: TBytes): TBytes;
var
Buffer:Pointer;
BufSize:Integer;
begin
Buffer:=nil;
BufSize:=0;

try
SfDecompressBuf(@ASrcBytes[0],Length(ASrcBytes),0,Buffer,BufSize);
SetLength(Result,BufSize);
Move(Buffer^,Result[0],BufSize);
except
on E:Exception do
SfRaiseException(E,'Exception raised in DecompressBytes call');
end;

//由于try...except块中重引发了异常,所以在发生了异常的情况下,以下的代码不会执行
FreeMem(Buffer);
end;

阅读全文

与delphi资源文件解压相关的资料

热点内容
活动轮廓模型vc程序 浏览:426
er图自动生成工具 浏览:261
excel表格中复制到微信显示空文件 浏览:531
湖州婚恋网站费用多少 浏览:458
bbc的app哪个好 浏览:139
cad文件名窗口布局怎么设置 浏览:16
苹果5s可以升级80吗 浏览:903
如何查找大文件夹 浏览:723
手机如何抠章放到另一张文件里 浏览:184
怎么在工商银行app添加房产 浏览:132
手机怎么添加文件 浏览:387
屏保密码图案 浏览:186
zoc如何传输文件 浏览:802
传送资料用什么app 浏览:978
word文件怎么加图片 浏览:497
天天酷跑12月新版本 浏览:208
ai保存图片是哪个格式文件 浏览:671
微信传文件pages文件打不开怎么办 浏览:959
华为手机如何转数据到小米手机 浏览:22
上海学习编程有哪些学校 浏览:293

友情链接