社区
Delphi
帖子详情
didi接分
wxjh
2002-09-21 10:12:20
阿
...全文
91
2
打赏
收藏
didi接分
阿
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
D_Q
2002-09-21
打赏
举报
回复
zlib 1.1.4
D_Q
2002-09-21
打赏
举报
回复
谢谢!顺便给你发段代码吧。Zlib中String的压缩
------------------------------------------------------
中秋了!略备薄礼,请笑纳……http://61.151.251.40/1.jpg
------------------------------------------------------
procedure ZCompress(const inBuffer: Pointer; inSize: Integer;
out outBuffer: Pointer; out outSize: Integer;
level: TZCompressionLevel);
const
delta = 256;
var
zstream: TZStreamRec;
begin
FillChar(zstream,SizeOf(TZStreamRec),0);
outSize := ((inSize + (inSize div 10) + 12) + 255) and not 255;
GetMem(outBuffer,outSize);
try
zstream.next_in := inBuffer;
zstream.avail_in := inSize;
zstream.next_out := outBuffer;
zstream.avail_out := outSize;
ZCompressCheck(DeflateInit(zstream,ZLevels[level]));
try
while ZCompressCheck(deflate(zstream,Z_FINISH)) <> Z_STREAM_END do
begin
Inc(outSize,delta);
ReallocMem(outBuffer,outSize);
zstream.next_out := PChar(Integer(outBuffer) + zstream.total_out);
zstream.avail_out := delta;
end;
finally
ZCompressCheck(deflateEnd(zstream));
end;
ReallocMem(outBuffer,zstream.total_out);
outSize := zstream.total_out;
except
FreeMem(outBuffer);
raise;
end;
end;
//-------------------------------------
procedure ZDecompress(const inBuffer: Pointer; inSize: Integer;
out outBuffer: Pointer; out outSize: Integer; outEstimate: Integer);
var
zstream: TZStreamRec;
delta : Integer;
begin
FillChar(zstream,SizeOf(TZStreamRec),0);
delta := (inSize + 255) and not 255;
if outEstimate = 0 then outSize := delta
else outSize := outEstimate;
GetMem(outBuffer,outSize);
try
zstream.next_in := inBuffer;
zstream.avail_in := inSize;
zstream.next_out := outBuffer;
zstream.avail_out := outSize;
ZDecompressCheck(InflateInit(zstream));
try
while ZDecompressCheck(inflate(zstream,Z_NO_FLUSH)) <> Z_STREAM_END do
begin
Inc(outSize,delta);
ReallocMem(outBuffer,outSize);
zstream.next_out := PChar(Integer(outBuffer) + zstream.total_out);
zstream.avail_out := delta;
end;
finally
ZDecompressCheck(inflateEnd(zstream));
end;
ReallocMem(outBuffer,zstream.total_out);
outSize := zstream.total_out;
except
FreeMem(outBuffer);
raise;
end;
end;
//-------------------------------------
function ZCompressStr(const s: String; level: TZCompressionLevel): String;
var
buffer: Pointer;
size : Integer;
begin
ZCompress(PChar(s),Length(s),buffer,size,level);
SetLength(result,size);
Move(buffer^,result[1],size);
FreeMem(buffer);
end;
//-------------------------------------
function ZDecompressStr(const s: String): String;
var
buffer: Pointer;
size : Integer;
begin
ZDecompress(PChar(s),Length(s),buffer,size);
SetLength(result,size);
Move(buffer^,result[1],size);
FreeMem(buffer);
end;
滴滴车主apk-5.4.6-426
didi
滴滴车主apk-5.4.6-426
didi
mpvue框架出行小程序
didi
-master(带截图)
【mpvue框架出行小程序
didi
-master(带截图)】是一个基于mpvue框架开发的出行类微信小程序项目,其中包含了滴滴出行的部分功能实现。这个项目旨在为开发者提供一个学习和参考的实例,帮助他们理解和掌握如何利用...
毕业设计-mpvue框架仿滴滴出行
didi
-整站商业源码.zip
本文档的知识点主要围绕“毕业设计-mpvue框架仿滴滴出行
didi
-整站商业源码.zip”的内容展开,包括mpvue框架的应用、仿制滴滴出行
DIDI
的项目实践、前端开发技术PHP和Java的使用,以及小程序开发的相关知识。...
藏经阁-HBase at
DIDI
,看滴滴内部使用HBase的技巧.pdf
藏经阁-HBase at
DIDI
,看滴滴内部使用HBase的技巧 HBase 是一种分布式、面向列的NoSQL数据库,广泛应用于大规模数据存储和处理场景。滴滴内部广泛使用HBase,以满足其庞大的数据存储和处理需求。本文将深入探讨...
实训商业源码-mpvue框架仿滴滴出行
didi
-论文模板.zip
接下来,仿滴滴出行的小程序模板是一个基于mpvue框架,以滴滴出行为蓝本进行界面和功能仿制的商业项目。这个项目不仅仅是一个简单的界面复制,更重要的是要将滴滴出行的核心功能进行移植,包括但不限于用户注册登录...
Delphi
5,927
社区成员
262,931
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章