|
実は、とあるユーザー様からバグ報告がありました。
中国語メール等で、添付ファイルのファイル名が中国語だと、そのファイル
名が化けます。さらに運が悪いと添付ファイルの生成に失敗するなどのエラー
が出る恐れがあります。
鶴亀メールは添付ファイルファイル名が何語だろうが関係なく、そのまま日
本語ファイル名として使ってしまうことに問題があります。
WindowsNT/2000/XPの場合なら、ファイル名をUnicodeに変換して保存してや
れば一応文字化け無く保存できますが、そうすると鶴亀メールのファイルやり
とり関係処理をすべてUnicode化しなければならないし、そもそもそのために
は秀丸エディタもUnicode化しないとダメです。
仮にUnicode化したとしても、Windows95/98/Meの場合はそもそもUnicodeフ
ァイル名は使えないので、また別の対処が必要です。
ということで、とりあえずWindows95/98/Me用の対処を入れることにしまし
た。
でもって、中国語/韓国語ファイル名を受け取った場合は、それを英数字の
みのファイル名に変換して保存することにしました。ただし、鶴亀メール中の
添付ファイル枠では元のファイル名で表示します。
その変換を以下のようにします。
ファイル名の先頭に付ける文字列は、
欧文の場合、 $eu_
gb2312 $gb_
big5 $b5_
韓国語 $kr_
で、2バイト文字はその文字の下位15bitを5bitづつに分けて0-9、A-Zから
対応する1文字を取り出してそれで表現します。
んでもって、2バイト文字コードINが「{」、2バイト文字OUTが「]」です。
そうすると、例えば
「中中中AAA.TXT」は、
$gb_{ABCABCABC}AAA.TXT
みたいな感じのファイル名になります。
ということで作業を開始します。
|
|