Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > zlibライブラリ > Zlib::GzipReaderクラス > wrap
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