2010-03-22 66 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