Content-Transfer-Encoding: 間違いメールNo.07907
navie さん 21/04/08 11:15
 
MUA移行のため既使用MUAから秀丸メールにメールを移行していますが、古い受信メー
ルの中に、Content-Transfer-Encoding: 行を間違えて、平文なのにbase64指定して
いるものがあります。
旧MUAではなんとなく7bitに読み替えて表示していたようで問題なく表示されていま
したが、秀丸メールにインポートしたところ、文字化けして表示されました(正しい
挙動ではあります)。

このメールを編集可能にして、Content-Transfer-Encoding: 行を7bitに書き換えて
みても、文字化けせずに表示されることはありません。

現状はインポート前のデータでContent-Transfer-Encoding: 行を書き換え、改めて
インポートすることで対応していますが、これだと全メールを確認しないことには元
のメールデータを削除することができず、非効率に感じています。
インポート後のデータに編集を加えて正しく表示させる方法はありませんでしょうか。

その他、Content-Type: 行の宣言と実際の文字コードが違うものや、そもそもこれら
のヘッダがないもの(昔の電子メールはいい加減ですね)などありますが、これらも含
め、インポート後に編集して表示させる方法を教えていただければと思います。

[ ]
RE:07907 Content-Transfer-Encoding: 間No.07908
秀まるお2 さん 21/04/08 11:42
 
 こちらで簡単にテストしてみたんですが、base64エンコードされたと勘違いしてイ
ンポートされたメールは本文が化け化けになってしまってるようなので、それを元に
戻すのは無理だと思います。

 base64じゃない普通の文字列データをbase64と解釈した場合、base64と関係ない文
字(64文字以外)は全部無視というか、カットされてしまってます。それらは復元は
不可能です。

 秀丸メールでなんとかできることがあるとしたら、「base64」と指定されてても中
身を見て明らかにbase64じゃない場合は無視するようにする、そういう処理を追加す
る手はありますけども。ただ、自動判定の精度の問題もあるのでなんでもかんでもう
まく自動判定してはくれなさそうな気はします。

 自動判定の処理を追加するとしたら、base64と関係ない文字(64種類以外の文字)
の割合が何パーセント以上あるか、みたいな判定ロジックになるかなぁと思います。

 どっちにしてもインポートしなおしてもらわないとダメではあります。

[ ]
RE:07908 Content-Transfer-Encoding: 間No.07909
navie さん 21/04/08 13:12
 
> base64じゃない普通の文字列データをbase64と解釈した場合、base64と関係ない
>文字(64文字以外)は全部無視というか、カットされてしまってます。それらは復
>元は不可能です。

ですよね……承知しました。
まあ仕方ないですね。

ありがとうございました。


[ ]