本文简要介绍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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。