【问题标题】:How do I "unzip" a gzipped stream while reading it如何在阅读时“解压缩” gzipped 流
【发布时间】:2010-03-22 08:27:00
【问题描述】:

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

【问题讨论】:

    标签: c++ stream gzip


    【解决方案1】:

    您或许可以试试gzstream 库:

    Gzstream 是一个小型 C++ 库, 基本上只是一个包装,那 提供 zlib 的功能 C++ iostream 中的 C 库。这是 在 LGPL 下免费提供 许可证。

    【讨论】:

    • 我需要在内存中解压压缩后的内容。我没有看到这个库对我有什么帮助。
    【解决方案2】:

    http://www.zlib.net/

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

    【讨论】:

    • 我所看到的只是 gzip 相关函数,这些函数与处理磁盘中的 gzip 文件有关。我需要在内存中解压缩 gzipped 流
    • 开枪!使用“gzip”搜索文档zlib.net/manual.html#Introduction,出现许多描述处理 gzip 流时的行为的部分。从那和文档中的介绍性文本中,我得出结论,可以通过通常的 inflate / deflate 接口读取 gzip 流。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-18
    相关资源
    最近更新 更多