我希望能夠對gzip文件進行隨機訪問。 如果預處理的結果比文件本身小得多,我可以對它進行一些預處理(比如說構建某種索引)。隨機訪問gzip流
有什麼建議嗎?
我的想法是:
- 哈克在現有的gzip實現和序列化其解壓縮器狀態每一個,比方說,1兆字節的壓縮數據。然後進行隨機訪問,反序列化解壓縮器狀態並從兆字節邊界讀取。這看起來很難,特別是因爲我正在使用Java,而且我找不到純java gzip實現:(
- 重新壓縮1Mb塊的文件並執行上述操作,這有兩倍的缺點所需的磁盤空間
- 編寫一個簡單的gzip格式解析器,它不做任何解壓縮,只檢測和索引塊邊界(如果還有任何塊:我還沒有讀取gzip格式描述)
謝謝,這太酷了!如果我只是找到了一種方法,可以從Java中舒適地使用它.. – jkff 2010-03-26 22:04:03
@jkff:如果您不需要跨平臺部署,請查看JNA。作爲一種調用C庫的方式,這非常容易。 – 2010-03-27 01:23:36
再次感謝,我這樣做,它就像一個魅力!雷克斯,也感謝你:我使用JNA :) – jkff 2010-03-27 18:41:35