0
def deflate(string, level)
z = Zlib::Deflate.new(level)
dst = z.deflate(string, Zlib::NO_FLUSH)
z.close
return dst
end
def inflate(string)
zstream = Zlib::Inflate.new
buf = zstream.inflate(string)
zstream.finish
zstream.close
return buf
end
a = deflate("asasasas",6)
p a
p inflate(a)
は私のライン上のバッファエラーZlibのふくらませるのバッファエラー
zstream.finish
を与えますか? Ruby 1.8.7私は信じています。
私はZlib :: Inflate.inflate(a)を使用すると、バッファエラーをスローします。だから私はそれらの方法を書くことに決めました。今、zstream.finishの代わりにZlib :: FINISHを使用すると、空の文字列が返されます。 – Voldemort
私は1.9.2に対してそれをテストしました。多分、それは異なったルビーバージョンで動作するでしょうか?最初に言ったように1.8.7を使用していますか? –
ちょうどそれを1.8.7でテストして、動作します(** ruby -rzlib -e 'p Zlib :: Inflate.inflate(Zlib :: Deflate.deflate( "asasasas"、6))**)何が起こるか見る。 –