2010-03-22 72 views
4

我的程序使用HTTP通过网络读取gzipped文件。
我需要我的程序能够解压缩内容并解析它,即使并非所有gzip文件都已经到达。
可以这样做吗?
如果是这样,它可以在C++中完成吗?如果是这样,怎么样?如何在读取压缩流时“解压缩”

回答

7

你也许可以尝试一下gzstream库:

Gzstream是一个小的C++库, 基本上只是一个包装,是 提供了一个C++的iostream zlib的 C-库的功能。它是根据LGPL 许可免费提供的 。

+1

我需要解压缩内存中的gzip内容。我没有看到这个图书馆可以帮助我。 – Guy 2010-03-23 10:30:24

4

http://www.zlib.net/

的Zlib是能够读取gzip的。看看手册。 http://www.zlib.net/manual.html#Gzip

+0

我看到的只是与处理从磁盘压缩文件相关的gzip相关函数。我需要在内存中压缩gzipped流 – Guy 2010-03-23 12:54:58

+0

拍摄! 使用“gzip”搜索文档http://www.zlib.net/manual.html#Introduction,并且许多部分将出现在描述处理gzip流时的行为。从文档和介绍文本中我得出的结论是,通过通常的膨胀/缩小界面来读取gzip流是可能的。 – 2010-03-23 13:31:21