Type:
Class

Zlib::GzipWriter is a class for writing gzipped files. GzipWriter should be used with an instance of IO, or IO-like, object.

Following two example generate the same result.

Zlib::GzipWriter.open('hoge.gz') do |gz|
  gz.write 'jugemu jugemu gokou no surikire...'
end

File.open('hoge.gz', 'w') do |f|
  gz = Zlib::GzipWriter.new(f)
  gz.write 'jugemu jugemu gokou no surikire...'
  gz.close
end

To make like gzip(1) does, run following:

orig = 'hoge.txt'
Zlib::GzipWriter.open('hoge.gz') do |gz|
  gz.mtime = File.mtime(orig)
  gz.orig_name = orig
  gz.write IO.binread(orig)
end

NOTE: Due to the limitation of Ruby's finalizer, you must explicitly close GzipWriter objects by Zlib::GzipFile#close etc. Otherwise, GzipWriter will be not able to write the gzip footer and will generate a broken gzip file.

open

Zlib::GzipWriter.open(filename, level=nil, strategy=nil) { |gz| ... } Class Public methods

2015-06-14 18:15:50
printf

printf(*args) Instance Public methods Same as

2015-06-14 18:46:29
comment=

comment=(p1) Instance Public methods Specify the comment (str)

2015-06-14 18:26:52
mtime=

mtime=(p1) Instance Public methods Specify the modification time (mtime)

2015-06-14 18:32:42