高橋征義です。

Katsuhiro Ueno <unnie / blue.sky.or.jp>さん:
> > れます)。うーん、使い方を間違えているのでしょうか。
> 
> 間違ってます (^^;;;

やっぱりそうでしたか(^^;;

> # 一気にやるなら Deflate::deflate、
> # ボチボチやるなら Deflate#deflate。
> # ヤヤこしい…

なるほどです。

> あと、あくまで圧縮/展開だけですから、.gz なヘッダーは吐きません。
> なので gzip に叱られるのは当然と言えば当然です。

うーん、そうなんですか。
基本的には *.gzなファイルを生成・展開することが
目的なので、それができないとちょっと困るのでした。

> 無理矢理、
> 
> src = open('zlib.html').read
> # add .gz header
> print [ 0x1f, 0x8b, 8, 0, Time.now.to_i, 0, 3 ].pack('C4VC2')
> # compress & remove zlib header/footer
> dst = Deflate.deflate(src)
> print dst[2, dst.size - 6]
> # add .gz footer
> print [ Zlib.crc32(src), src.size ].pack('N*')
> 
> とすれば、一応 .gz なファイルを吐くことはできます。

こんな感じでやればいいわけですね。なるほど。
# 読み込むのはunpackを使うのでしょうか?

> # gzFile 系関数を実装すれば幸せになれるのだけど…
> # ん〜、ヒマ見つけて、やってみます

よろしくお願いします(_o_)
# 頼ってばかりですみまねん(_o_)

高橋征義 (TAKAHASHI Masayoshi)       Email:maki / inac.co.jp