本文簡要介紹ruby語言中 Zlib::Inflate.new
的用法。
用法
Zlib::Inflate.new(window_bits = Zlib::MAX_WBITS)
為解壓創建一個新的膨脹流。 window_bits
設置曆史緩衝區的大小,可以有以下值:
- 0
-
使用壓縮流的 zlib 標頭中的窗口大小進行膨脹。
- (8..15)
-
覆蓋壓縮流中膨脹標頭的窗口大小。窗口大小必須大於或等於壓縮流的窗口大小。
- 大於 15
-
將 32 添加到 window_bits 以啟用帶有自動標頭檢測的 zlib 和 gzip 解碼,或添加 16 以僅解碼 gzip 格式(非 gzip 流將引發
Zlib::DataError
)。 - (-8..-15)
-
啟用原始放氣模式,該模式不會生成檢查值,並且不會在流結束時查找任何檢查值進行比較。
這適用於使用 deflate 壓縮數據格式的其他格式,例如 zip,它們提供自己的檢查值。
示例
open "compressed.file" do |compressed_io|
zi = Zlib::Inflate.new(Zlib::MAX_WBITS + 32)
begin
open "uncompressed.file", "w+" do |uncompressed_io|
uncompressed_io << zi.inflate(compressed_io.read)
end
ensure
zi.close
end
end
相關用法
- Ruby Inflate.inflate用法及代碼示例
- Ruby Inflate.sync_point?用法及代碼示例
- Ruby Integer.nobits?用法及代碼示例
- Ruby Integer lcm()用法及代碼示例
- Ruby Integer.self >=用法及代碼示例
- Ruby Integer.self >>用法及代碼示例
- Ruby Integer.next用法及代碼示例
- Ruby Integer.self ** numeric用法及代碼示例
- Ruby Integer integer?用法及代碼示例
- Ruby Integer.truncate用法及代碼示例
- Ruby Integer digits用法及代碼示例
- Ruby Integer divmod()用法及代碼示例
- Ruby Integer floor()用法及代碼示例
- Ruby Integer.sqrt用法及代碼示例
- Ruby Integer to_f用法及代碼示例
- Ruby Integer to_s用法及代碼示例
- Ruby Integer.bit_length用法及代碼示例
- Ruby InstructionSequence.base_label用法及代碼示例
- Ruby Integer times用法及代碼示例
- Ruby Integer truncate()用法及代碼示例
- Ruby Integer remainder()用法及代碼示例
- Ruby Integer.floor用法及代碼示例
- Ruby Integer.pred用法及代碼示例
- Ruby Integer.gcd用法及代碼示例
- Ruby Integer fdiv()用法及代碼示例
注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Inflate.new。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。