クラス
-
Zlib
:: Deflate (60) -
Zlib
:: GzipReader (84) -
Zlib
:: GzipWriter (120) -
Zlib
:: Inflate (36) -
Zlib
:: ZStream (12)
検索結果
先頭5件
-
Zlib
:: Deflate # params(level , strategy) -> nil (9227.0) -
圧縮ストリームの設定を変更します。詳しくは zlib.h を 参照して下さい。設定の変更に伴うストリームからの出力は 出力バッファに保存されます。
... zlib.h を
参照して下さい。設定の変更に伴うストリームからの出力は
出力バッファに保存されます。
@param level 0-9の範囲の整数, または Zlib::DEFAULT_COMPRESSION を指定します。
詳細はzlib.hを参照してください。
@param st......rategy Zlib::FILTERED, Zlib::HUFFMAN_ONLY,
Zlib::DEFAULT_STRATEGY など指定します。詳細は zlib.h を参照してください。
require 'zlib'
def case1
dez = Zlib::Deflate.new
comp_str = dez.deflate('hoge'*5);
comp_str << dez.deflate('0'*80)
comp_str......str
p Zlib::Inflate.inflate(comp_str)
end
def case2
dez = Zlib::Deflate.new
comp_str = dez.deflate('hoge'*5);
dez.params(Zlib::BEST_COMPRESSION, Zlib::HUFFMAN_ONLY)
comp_str << dez.deflate('0'*80)
comp_str << dez.finish
p comp_str
p Zlib::Inflate.inflate(comp_str... -
Zlib
:: GzipWriter # write(*str) -> Integer (9209.0) -
自身に str を出力します。str が文字列でなけ れば to_s による文字列化を試みます。
...自身に str を出力します。str が文字列でなけ
れば to_s による文字列化を試みます。
@param str 出力する文字列を指定します。文字列でない場合は to_s で文字列に変換します。
@return 実際に出力できたバイト数を返します。......require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.write "foo"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
puts gz.read
}
#=> foo
@see IO#write... -
Zlib
:: GzipWriter # write(str) -> Integer (9209.0) -
自身に str を出力します。str が文字列でなけ れば to_s による文字列化を試みます。
...自身に str を出力します。str が文字列でなけ
れば to_s による文字列化を試みます。
@param str 出力する文字列を指定します。文字列でない場合は to_s で文字列に変換します。
@return 実際に出力できたバイト数を返します。......require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.write "foo"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
puts gz.read
}
#=> foo
@see IO#write... -
Zlib
:: Deflate # deflate(string , flush = Zlib :: NO _ FLUSH) -> String (9115.0) -
string を圧縮ストリームに入力します。処理後、ストリームからの 出力を返します。このメソッドを呼ぶと出力バッファ及び入力バッファは 空になります。string が nil の場合はストリームへの入力を 終了します。(Zlib::ZStream#finish と同じ)。 flush には Zlib::NO_FLUSH, Zlib::SYNC_FLUSH, Zlib::FULL_FLUSH, Zlib::FINISH のいずれかを指定します。 詳しくは zlib.h を参照して下さい。
...string を圧縮ストリームに入力します。処理後、ストリームからの
出力を返します。このメソッドを呼ぶと出力バッファ及び入力バッファは
空になります。string が nil の場合はストリームへの入力を
終了します。(Zlib::ZStrea......は Zlib::NO_FLUSH, Zlib::SYNC_FLUSH,
Zlib::FULL_FLUSH, Zlib::FINISH のいずれかを指定します。
詳しくは zlib.h を参照して下さい。
@param string 圧縮する文字列を指定します。
@param flush Zlib::NO_FLUSH, Zlib::SYNC_FLUSH,
Zlib::FULL_FLUSH, Zlib::FINI......SH のいずれかを指定します。
require 'zlib'
dez = Zlib::Deflate.new
p dez.deflate("123" * 20, Zlib::FINISH) #=> "x\2343426$\027\001\000e\217\v\271"... -
Zlib
:: Inflate # inflate(string) -> String (9109.0) -
string を展開ストリームに入力します。
...string を展開ストリームに入力します。
処理後、ストリームからの出力を返します。
このメソッドを呼ぶと出力バッファ及び入力バッファは空になります。
string が nil の場合はストリームへの入力を
終了します。(Zlib::ZStr......eam#finish と同じ)。
@param string 展開する文字列を入力します。
@raise Zlib::NeedDict 展開に辞書が必要な場合に発生します。
Zlib::Inflate#set_dictionary メソッドで辞書をセットした
後で、空文字列と......共にこのメソッドを再度呼び出して下さい。
require 'zlib'
cstr = "x\234\313\310OOUH+MOTH\315K\001\000!\251\004\276"
inz = Zlib::Inflate.new
p inz.inflate(cstr) #=> "hoge fuga end"... -
Zlib
:: GzipWriter # mtime=(time) (6209.0) -
gzip ファイルのヘッダーに記録する最終更新時間を指定します。
...します。
Zlib::GzipWriter#write 等の書き込み系メソッドを
呼んだ後で指定しようとすると Zlib::GzipFile::Error 例外が
発生します。
@param time gzip ファイルのヘッダーに記録する最終更新時間を整数で指定します。
@return time を返し......ます。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
p gz.mtime = 1 #=> 1
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
puts gz.mtime
# 例
#=> Thu Jan 01 09:00:01 +0900 1970
}... -
Zlib
:: Deflate # set _ dictionary(string) -> String (6121.0) -
圧縮に用いる辞書を指定します。string を返します。 このメソッドは Zlib::Deflate.new, Zlib::ZStream#reset を呼び出した直後にのみ有効です。詳細は zlib.h を参照して下さい。
...string を返します。
このメソッドは Zlib::Deflate.new, Zlib::ZStream#reset
を呼び出した直後にのみ有効です。詳細は zlib.h を参照して下さい。
@param string 辞書に用いる文字列を指定します。詳しくは zlib.h を参照してください。
@retur......uire 'zlib'
def case1(str)
dez = Zlib::Deflate.new
comp_str = dez.deflate(str)
comp_str << dez.finish
comp_str.size
end
def case2(str, dict)
dez = Zlib::Deflate.new
p dez.set_dictionary(dict)
comp_str = dez.deflate(str)
comp_str << dez.finish
comp_str.siz......10
dict = 'hoge_fuga_ugougo'
sset = [ dict, 'taeagbamike', 'ugotagma', 'fugebogya' ]
g = [ 0, 1, 1, 1, 0, 0, 0, 3, 3, 3, 0, 0, 1, 1, 0, 0, 0, 1, 2, 2, 0, 0, 0, 2, 0, 1, 1, 0, 0, 0, 0, 0]
str = (1..i).collect{|m| t = rand(g.size); sset.at(g[t])}.join("")
printf "%d normal:%d, dict:%d\n",... -
Zlib
:: GzipReader # readpartial(maxlen , outbuf = nil) -> String (6115.0) -
IO クラスの同名メソッド IO#readpartial と同じです。
...ソッド IO#readpartial と同じです。
@param maxlen 読み込む長さの上限を整数で指定します。
@param outbuf 文字列で指定します。読み込んだデータを outbuf に破壊的に格納し、
返り値は outbuf となります。outbuf は一旦 maxlen......長に拡張(あるいは縮小)されたあと、
実際に読み込んだデータのサイズになります。
@raise ArgumentError maxlen に負の値が入力された場合発生します。
@see IO#readpartial... -
Zlib
:: GzipWriter # printf(format , *args) -> nil (6115.0) -
C 言語の printf と同じように、format に従い引数 を文字列に変換して、自身に出力します。
...C 言語の printf と同じように、format に従い引数
を文字列に変換して、自身に出力します。
@param format フォーマット文字列を指定します。print_format を参照してください。
@param args フォーマットされるオブジェクトを指定し......。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.printf("\n%9s", "bar")
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
puts gz.read
}
#=> bar
@see IO#printf, Kernel.#printf... -
Zlib
:: GzipReader # gets(rs = $ / ) -> String | nil (6109.0) -
IO クラスの同名メソッドIO#getsと同じです。
...IO クラスの同名メソッドIO#getsと同じです。
但し、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。
gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルのフッターに......あった場合は
Zlib::GzipFile::NoFooter, Zlib::GzipFile::CRCError,
Zlib::GzipFile::LengthError 例外を発生させます。
* EOF (圧縮データの最後) を越えて読み込み要求を受けた時。
すなわち Zlib::GzipReader#read,
Zlib::GzipReader#gets メソッド等が......だ後、Zlib::GzipFile#close メソッドが
呼び出された時。
* EOF まで読み込んだ後、Zlib::GzipReader#unused メソッドが
呼び出された時。
@param rs 行の区切りを文字列で指定します。
@raise Zlib::Error Zlib::Error を参照
@raise Zlib::GzipFi...