Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > zlibライブラリ > Zlib::GzipReaderクラス > new

singleton method Zlib::GzipReader.new

new(io) -> Zlib::GzipReader[permalink][rdoc]

io と関連付けられた GzipReader オブジェクトを作成します。

GzipReader オブジェクトは io からデータを逐次リードして 解析/展開を行います。io には少なくとも、IO#read と 同じ動作をする read メソッドが定義されている必要があります。

[PARAM] io:
IO オブジェクト、もしくは少なくとも IO#read と同じ動作を する read メソッドが定義されているオブジェクト
[EXCEPTION] Zlib::GzipFile::Error:
ヘッダーの解析に失敗した場合発生します。
require 'zlib'

File.open('hoge.txt', "w") { |fp|
  fp.puts 'hoge'
}

f = File.open('hoge.txt')
begin
  Zlib::GzipReader.new(f)
rescue Zlib::GzipFile::Error => err
  puts "error", err #=> error
                    #=> not in gzip format
end