|
>
>>JISコードの”あい”は、0x1B 0x24 0x42 0x24 0x22 0x24 0x24 です。
>>これを自作のMIME Base64エンコードすると、
>>=?iso-2022-jp?B?GyRCJCIkJA?=
>>となりましした。
>>
>>このエンコードデータ "=?iso-2022-jp?B?GyRCJCIkJA?="
>>を秀丸エディタで変換->Base64デコードとすると、
>>期待値の”あい”に対して”あ$”になってしまいます。
>>
>>間違いがどこにあるかご教示をよろしくお願いします。
>
>メールには詳しくないのですが適当答えてしまいますと、JISで最後に ASCIIに
>戻す ESC ( B が無いためのようです。
>この変換はたぶん秀丸メールと同じ処理をしていて、秀丸メールの題名の受信で
>も同様になりました。
>JISとしては ESC ( B は無くても大丈夫だと思うのですが、メールでは約束事が
>あるのかどうか知らないですが、ESC ( B は付けておいた方がいいようです。
>Outlook Express でも正しくデコードできませんでした。
ありがとうございます。
JISコードの”あ”= 0x1B 0x24 0x42 0x24 0x22
をMIME BASE64にエンコードすると
=?iso-2022-jp?B?GyRCJCI?=
になりました。
これは期待通りに秀丸上でBASE64デコードされ
”あ”に変換されました。
お教えのように安全のために、エンコード処理で、JIS漢字コード
の最後は、ESC(B をつけて終わるようにしてみます。
お礼に興味深いサンプルプログラムを見つけたので参考まで
ご覧願います。
TITLE:[9fans] Base64 mime encode/decode program
URL:http://lists.cse.psu.edu/archives/9fans/1998-November/007052.html
このプログラムをクリップボード経由でエディタに移すと、
元のJIS日本語コードが化けてSHIFT-JISコードに変わり、
この状態でコンパイルすると、
プログラムはESCをとりそこねて0x80以上ではじまる漢字コードがきて、*mime_encod
e(char *from, char *encoded) 関数が無限ループに陥りました。
|
|