wrap(io) -> Zlib::GzipReader[permalink][rdoc]wrap(io) {|gz| ... } -> objectio と関連付けられた GzipReader オブジェクトを作成します。
ブロックが与えられた場合は、それを引数としてブロックを実行します。ブロックの実行が終了すると、GzipReader オブジェクトは自動的にクローズされます。関連付けられている IO オブジェクトまでクローズしたくない時は、ブロック中で Zlib::GzipFile#finish メソッドを呼び出して下さい。
require 'zlib'
=begin
# hoge.gz がない場合はこれで作成する。
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
}
=end
f = File.open('hoge.gz')
Zlib::GzipReader.wrap(f){|gz|
print gz.read
}
p f.closed? #=> true
f = File.open('hoge.gz')
Zlib::GzipReader.wrap(f){|gz|
print gz.read
gz.finish
}
p f.closed? #=> false