Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > library zlib > class Zlib::GzipReader > wrap
wrap(io) -> Zlib::GzipReader
wrap(io) {|gz| ... } -> object
io と関連付けられた 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