NewsWatcher でまとめて保存したファイルを Decode したら添付ファイル名がおかしくなることが時々あります。 その殆どが添付ファイル名に日本語が使われていた場合です。
ISO-2022-JP B Encode か ISO-8859-1 Q Encode の場合は
Mac nkf
で変換出来ますので Decoder 1.3.7 を使って取り出すことが出来ます。
Mac nkf の設定では [MIME を解読する] を check してください。
ISO-2022-JP なら上記と同じく変換するだけです。
しかし、場合によっては hex (%..) encode されている事も有り得ます。 現状では Netscape で わざわざ UUencode を選択したものにはそうそう遭遇しないでしょうけど。
この形式、urlencode とも呼ばれていて、変換出来る Tool は大抵 Web 上の FORM から送信された Mail を読むためのもので、 巨大なファイルを扱うようには出来ていません。
Perl があれば処理できるのですが.....。 文字コード変換無しなら、たった 2 行です (MacPerl)。
#!perl -pi.bak
s/%([a-fA-F0-9]{2})/pack 'H2', $1/eg;
これで Mac nkf で変換出来ますので Decoder 1.3.7 で取り出せます。
Perl 5.002 で文字コード変換する場合。
#! perl -pi.bak -MJcode
BEGIN { require 'jcode.pl'; } # Jcode.pm が無い場合
s/%([a-fA-F0-9]{2})/pack 'H2', $1/eg;
jcode::convert(\$_, 'sjis', '', 'z')
if /^Subject:/i || /^begin [0-7]{3,4} / || /filename=/;