Type:
Class

Zlib::GzipReader is the class for reading a gzipped file. GzipReader should be used an IO, or -IO-like, object.

1
2
3
4
5
6
7
8
9
Zlib::GzipReader.open('hoge.gz') {|gz|
  print gz.read
}
 
File.open('hoge.gz') do |f|
  gz = Zlib::GzipReader.new(f)
  print gz.read
  gz.close
end

Method Catalogue

The following methods in Zlib::GzipReader are just like their counterparts in IO, but they raise Zlib::Error or Zlib::GzipFile::Error exception if an error was found in the gzip file.

Be careful of the footer of the gzip file. A gzip file has the checksum of pre-compressed data in its footer. GzipReader checks all uncompressed data against that checksum at the following cases, and if it fails, raises Zlib::GzipFile::NoFooter, Zlib::GzipFile::CRCError, or Zlib::GzipFile::LengthError exception.

  • When an reading request is received beyond the end of file (the end of compressed data). That is, when #read, #gets, or some other methods for reading returns nil.

  • When Zlib::GzipFile#close method is called after the object reaches the end of file.

  • When #unused method is called after the object reaches the end of file.

The rest of the methods are adequately described in their own documentation.

ungetbyte
  • References/Ruby on Rails/Ruby/Classes/Zlib/Zlib::GzipReader

ungetbyte(p1) Instance Public methods See

2025-01-10 15:47:30
lines
  • References/Ruby on Rails/Ruby/Classes/Zlib/Zlib::GzipReader

lines(*args) Instance Public methods This is a deprecated alias for each_line

2025-01-10 15:47:30
open
  • References/Ruby on Rails/Ruby/Classes/Zlib/Zlib::GzipReader

Zlib::GzipReader.open(filename) {|gz| ... } Class Public methods Opens a file

2025-01-10 15:47:30
bytes
  • References/Ruby on Rails/Ruby/Classes/Zlib/Zlib::GzipReader

bytes() Instance Public methods This is a deprecated alias for each_byte

2025-01-10 15:47:30
ungetc
  • References/Ruby on Rails/Ruby/Classes/Zlib/Zlib::GzipReader

ungetc(p1) Instance Public methods See

2025-01-10 15:47:30
readpartial
  • References/Ruby on Rails/Ruby/Classes/Zlib/Zlib::GzipReader

gzipreader.readpartial(maxlen [, outbuf]) => string, outbuf Instance Public methods Reads

2025-01-10 15:47:30
eof?
  • References/Ruby on Rails/Ruby/Classes/Zlib/Zlib::GzipReader

eof?() Instance Public methods Returns true or false

2025-01-10 15:47:30