Delphi 对GZIP解压


本文整理自网络,侵删。

 呵呵,终于做出来了,有一定收获, 
在算法上还是花了不少时间,
以前解gzip内容,现在是deflate,少了文件头内容,所以
用以前思路老是碰到"data error"问题。
用的是zLib控件:
(http://www.2ccc.com/article.asp?articleid=4269)

下面是可以运行的代码片断:
uses ZLibEx;

procedure TForm1.Button3Click(Sender: TObject);
var
url: string;
IdHTTP: TIdHTTP;
stream, out_stream: TMemoryStream;
begin
url := 'http://bill.finance.sina.com.cn/bill/trade_item.php?stock_code=sh580013&pages=0&time=1218809515';
IdHTTP := TIdHTTP.Create(nil);

stream := TMemoryStream.Create;
out_stream := TMemoryStream.Create;
try
IdHTTP.get(url, stream);
stream.Position:=0;
ZLibEx.ZDecompressStream2(stream, out_stream, -15);
stream.SaveToFile('c:\1.txt');
out_stream.SaveToFile('c:\2.txt'); //这个就是我们要的html内容
finally
stream.Free;
out_stream.Free;
IdHTTP.Free;
end;
end;

相关阅读 >>

Delphi google text to speech api

Delphi 遍历注册表

Delphi动态设置spcomm的属性值

Delphi:窗体的扩展样式gwl_exstyle用于setwindowlong

Delphixe 如何调用stringtojstring

Delphi 10.3.3 启动cnpack ide 专家 cnwizards coreide260.bpl错误解决办法

Delphi xe 枚举指定目录及子目录下的所有文件

Delphi 通过pid获取进程名

Delphi整理二(object pascal语言)

Delphi 2009 泛型容器单元(generics.collections)[2]: tqueue<t>

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...