Delphi 对GZIP解压

作者:admin 来源:未知 日期:2010/5/9 13:08:46 人气:获取失败 标签:

呵呵,终于做出来了,有一定收获, 
在算法上还是花了不少时间, 
以前解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对ZIP解压的更多相关文章

  1. CentOS7下zip解压和unzip压缩文件

    1.安装zip.unzip应用. yum install zip unzip

  2. MySQL For Windows Zip解压版安装

    前言 Windows 下 MySQL 有msi和zip解压安装版两种,而zip版只需解压并做简单配置后就能使用,我个人比较喜欢这种方式. 注意我们这里说的MySQL是指MySQL服务器,有很多初学的同 ...

  3. 解决ubuntu中zip解压的中文乱码问题

    转自解决ubuntu中zip解压的中文乱码问题 在我的ubuntu12.10中,发现显示中文基本都是正常的,只有在解压windows传过来的zip文件时,才会出现乱码.所以,我用另一个方法解决中文乱码 ...

  4. JAVA zip解压 MALFORMED 错误

    最近在在使用zip 解压时,使用JDK1.7及以上版本在解压时,某些文件会报异常 Exception in thread "main" java.lang.IllegalArgum ...

  5. windows下tomcat zip解压版安装方法

    下面记录一下在win7(32位)系统下,安装zip解压版的方法: 一.下载zip压缩包 地址:http://tomcat.apache.org/download-80.cgi 二.解压 我把解压包解压 ...

  6. 【转载】在linux下别用zip 用tar来压缩文件 zip解压后还是utf-8 window10是GBK

    3.2 使用 unzip 命令解压缩 zip 文件 将 shiyanlou.zip 解压到当前目录:   $ unzip shiyanlou.zip 使用安静模式,将文件解压到指定目录:   $ un ...

  7. Java zip解压,并遍历zip中的配置文件 .cfg或.properties

    1.解析cfg或properties配置文件 讲配置文件,读取,并封装成为map类型数据 /** * 解析cfg文件 * * @param cfgFile * @return */ public st ...

  8. ubuntu zip解压

    您好,zip xx.zip压缩,unzip xx.zip 解压,tar zcvf xx.tar.gz压缩tar zxvf xx.tar.gz解压

  9. zip 解压脚本

    zip 解压脚本 gpk-unzip.py #!/usr/bin/env python # -*- coding: utf-8 -*- # unzip-gbk.py import os import ...

随机推荐

  1. 企业行业分类数据库JSON

    这篇文章主要介绍了 企业信息中选择行业类型,常用在企业注册,入驻填写企业信息等. JSON: [{"id":1001,"name":"IT服务&quo ...

  2. Python压缩文件/文件夹

    [Python压缩文件夹]导入“zipfile”模块 def zip_ya(startdir,file_news): startdir = ".\\123" #要压缩的文件夹路径 ...

  3. pycharm中Terminal中运行用例

     1.设置终端路径 2.单个用例文件运行 3.多个用例文件,例如加载用例的文件运行 1.可能会出现如下错误(参考:https://blog.csdn.net/qq_36829091/article/d ...

  4. Spring报错汇总笔记

    报错信息: org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing X ...

  5. npm安装包时报错:Error: EPERM: operation not permitted, rename

    解决方法:先执行 npm cache clean -force在安装需要的包.

  6. idea设置自带的maven为国内镜像

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/panchang199266/articl ...

  7. .NET精彩博文

    vs2019安装和使用教程(详细) 为什么选择.NETCore? C#中Socket的简单使用

  8. JavaWeb项目http请求报错:Error parsing HTTP request header

    详细报错信息如下图: 原因:一一排查后,发现是http的请求中,包含了  “ | ” 竖线特殊符号:而并不是网上说的请求url太长了的原因. 解决方法:把 | 替换为  @

  9. Android。WebView加载UR请求使用Cookie储存User_Id记录用户是否登陆过

    1.WebView初始化的时候用倒如下代码: if (Build.VERSION.SDK_INT >= 21) { CookieManager.getInstance().setAcceptTh ...

  10. js中各种类型转换为Boolean类型

    数据类型  转换为true的值  转换为false的值 Boolean  true  false String  任何非空字符串  空字符串 Number  任何非零数字值(包括无穷大) 0和null ...