社区
Delphi
帖子详情
didi接分
wxjh
2002-09-21 10:12:20
阿
...全文
143
2
打赏
收藏
didi接分
阿
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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;
DiDi
Food中的智能补贴实战漫谈
本文详细介绍了
DiDi
Food如何运用智能补贴算法,通过经济学原理阐述差异化定价的重要性,探讨补贴问题的定义,以及增量预估与补贴分配的策略。文章还分享了在
DiDi
Food中实施的智能补贴架构和流程,以及Uplift模型的多种方法,包括Two Model、Single Model、X-Learner和R-Learner。实验结果显示模型在提升ROI和优化补贴金额方面取得积极效果,未来规划包括模型在线化、精度优化及用户长期价值建模等方向。
didi
VirtualApk 框架的使用
本文详细介绍
DIDI
VirtualApk框架的集成与使用过程,包括项目依赖、宿主与插件初始化、签名打包等关键步骤,解决常见问题,提供完整build.gradle配置。
DIDI
应知应会( 2025-07-23)
博客涵盖
DIDI
司机应知内容,包括安全驾驶要点,如遵守交规、保持车距等;GPS信号弱的解决方法,涉及安卓和苹果手机设置;还有提高服务分的技巧,如主动联系乘客、选择热门区域等,以及泉州地区中石化加油成本降低方法。
DiDi
for Android协议分析
本文介绍了一个名为
DiDi
的海外聊天软件及其基于HTTP的协议细节。该软件使用HMAC-SHA1进行加密认证,并详细介绍了从request_token到access_token的认证流程。
DiDi
Collection 开源项目指南
本文是
DiDi
Collection 开源项目指南,该项目是滴滴出行维护的高性能 Java 集合库,可提升开发效率与系统性能。介绍了项目快速启动的环境要求、依赖添加和示例代码,还给出应用案例分析和最佳实践,同时列举了同领域的典型生态项目。
Delphi
5,943
社区成员
262,943
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章