Sun, 9 Nov 97 03:50:56 +0900 頃の
Mail-Count: 05218
Subject: [ruby-list:5218] base64.rb
についてのお話にて HYOUDOU Kouichi /note さん曰く…
(H == HYOUDOU Kouichi /note <hyoudo / kcn.or.jp> さん)
In article 05218, <199711080550.OAA00575 / meimi.dialup.kcn.or.jp>
H> encoded-word'sにはさまれた改行と空白は無視されるように読めます(↓)
その通りだと聞いた記憶があります.
MIME encode される文字列の間に挟まれた
空白文字を正しく保存するためには
どちらかのパートに空白文字を含めて
MIME encode するとかしなきゃならんはずです.
ruby-list からは離れてしまうかもしれませんが
mew で「Subject: テスト てすと / テスト/てすと」を
MIME encode すると以下のようになります.
Subject: =?iso-2022-jp?B?GyRCJUYlOSVIGyhC?=
=?iso-2022-jp?B?IBskQiRGJDkkSBsoQg==?=
/
=?iso-2022-jp?B?GyRCJUYlOSVIGyhC?=/=?iso-2022-jp?B?GyRCJEYkOSRIGyhC?=
こいつをそれぞれ decode すると
=?iso-2022-jp?B?GyRCJUYlOSVIGyhC?= → 「テスト」
=?iso-2022-jp?B?IBskQiRGJDkkSBsoQg==?= → 「 てすと」
=?iso-2022-jp?B?GyRCJUYlOSVIGyhC?=/=?iso-2022-jp?B?GyRCJEYkOSRIGyhC?=
→ 「テスト/てすと」
のようになります.
2 行目が「 てすと」と空白が入っているのは
cut & paste した際のミスではありません :-)
# mew が絶対的に正しくて基準になるものだ! と言うつもりは毛頭ありませんが
# 私が知っている中では一番対応がよい(?)印象がありますので.
聞くところによると encode の方はまだ揺れ動いている感じもあるそうですが
少なくとも MIME encode されたヘッダの内容物の
decode に関しては encoded-word の間の空白文字は
無視しなきゃならないはずだったと思います.
--
やまだ あきら (akira / linux.or.jp or akira / nurs.or.jp)
Linux 関連ページ <URL:http://www.netlab.co.jp/~akira/linux/>