笠原です。
これは予告です。

* From: Motoyuki Kasahara <m-kasahr / sra.co.jp>
* Date: Wed, 4 Nov 1998 16:10:45 +0900

> そういえば、base64 は `b' や `B' ではなくて `m' だったでした。じゃあ、
> quoted-printable はもし入れるとしたら `M' ? :-)

将来的に Perl の pack/unpack で `M' が使われるようにならないとも限らな
いので、Ruby の pack/unpack には拡張を施さない方が良いのかな、と思い、
勢いで Quoted-Printable エンコーディング専用のクラスを書きあげてしまい
ました。すべて Ruby で書いてあります。ドキュメントを書き上げたら、公開
する予定です。

使い方はだいたい次のような感じです。pack("m") と違って、データを少しず
つエンコードしていけるようにしてみました。

	require 'qpencoder.rb'

	qp = QuotedPrintableEncoder.new	  # エンコーダを生成
	loop do
	    buffer = read(1024)		  # 1024 文字単位で読む
	    break if buffer == nil
	    print qp.encode(buffer)	  # エンコード結果を print
	end
	print qp.terminate		  # エンコード結終端結果を print

あと、同じインターフェースを持った Base64 のエンコーダも別途作ってしま
いました (^^;)。pack("m") には速度で負けるので、1 行の文字数を変えられ
るといった機能を付加しています。

ただし、デコーダは Base64, Quoted-Printable とも、まだ手つかずです。
______________________________________________________________________
                                          笠原 基之(かさはら もとゆき)