― MozillaZine.jp フォーラムは Mozilla 製品に関する情報交換の場です ―



All times are UTC + 9 hours

新しいトピックを投稿する トピックへ返信する  [ 3 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2011年9月03日(土) 22:56 
オフライン

登録日時: 2011年9月03日(土) 22:33
記事: 2
Thunderbird 6.01、WinXPです。
内容が日本語のテキスト文書やWord文書を添付し下書き保存するとメール本文が文字化けします。画像データやエクセル添付を試した所、問題ないようです。
今まで文字化けを指摘されたことはなく、下書き保存しないで送信した場合はどうなのかは不明です(今回たまたま下書きにして気付いたので送信していません)
本文を文字化けさせずに下書き保存&送信する方法はありますでしょうか?

文字化けしたメールのソース一部ですが以下のようになります。

Content-Type: multipart/mixed;
boundary="------------000609040307070906050800"

This is a multi-part message in MIME format.
--------------000609040307070906050800
Content-Type: text/plain; charset=Shift_JIS
Content-Transfer-Encoding: 7bit

$B6%5;5$(B

$B%b%j%d%^%3%7%N%S%g%&%$%s(B

$B1[LnIB1!(B

--------------000609040307070906050800
Content-Type: text/plain; charset=Shift_JIS;
name="=Color=.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;


オプションの「フォントと文字エンコーディング」は送信、受信ともISO-2022-JPです。
メール作成の時に、特にISO-2022-JPやShift_JISを指定してはいません。
よろしくお願いします。


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2011年9月04日(日) 18:50 
どうも、Thunderbird(5.0 以降)のバグっぽいですね。
Miya-35 さんのケースとは必ずしも同一ではないのですが、当方の環境(Windows XP SP3 + Thunderbird 6.0.1)でも本文の文字化けは再現しました。

【基本的な設定条件】
・アドオンはすべて無効
・メッセージ作成はプレーンテキスト形式
・[フォントと文字エンコーディング] は、[送信メッセージ] 、[受信メッセージ] ともに [日本語(ISO-2022-JP)]

【手順】
(1)メッセージ作成画面を開き、適当に宛先、件名を入れ、本文には適当な日本語文章を入力する。
 テスト用の件名「文字化けテスト」
 テスト用の本文「テキストファイルを添付すると本文が文字化けする?」
(2)添付ファイルとして、テキストファイル(*.txt)を選択する。
 テスト用のテキストファイル: test=sjis.txt(文字コードは Shift_JIS)
(3)下書きとして保存する。-> この段階では、メッセージペインで本文は文字化けしていない。
 ただし、ソース表示すると本文がエンコードされている。――【A】
(4)保存したメッセージの編集を実行し、開いたメッセージ作成画面では本文が文字化けしている。
 $B%F%-%9%H%U%!%$%k$rE:IU$9$k$HK\J8$,J8;z2=$1$9$k!)(B

A さんが書きました:
Subject: =?ISO-2022-JP?B?GyRCSjg7ejI9JDElRiU5JUgbKEI=?=
Content-Type: multipart/mixed;
boundary="------------020505060900040603070304"

This is a multi-part message in MIME format.
--------------020505060900040603070304
Content-Type: text/plain; charset=ISO-2022-JP …… P
Content-Transfer-Encoding: 7bit

$B%F%-%9%H%U%!%$%k$rE:IU$9$k$HK\J8$,J8;z2=$1$9$k!)(B …… Q

--------------020505060900040603070304
Content-Type: text/plain; charset=Shift_JIS; …… R
name="test=sjis.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="test=sjis.txt"
(以下、添付ファイルの内容=省略)


【考察】
― Word 文書(*.doc)や Excel 文書(*.xls)の添付では再現しなかった。しかし、テキスト文書であれば、*.txt でも *.csv でも再現した。
P の部分は、当方では Miya-35 さんのように「charset=Shift_JIS」にはならなかった。
― (3)のとき、プロファイル内の Draft ファイルをテキストエディタで開いて見ると、Q の部分は文字化けしていない。つまり、ISO-2022-JP で正しく記述されている。ただし、P の部分が「charset=Shift_JIS」になっていると、エンコードされているはず??
P が「charset=ISO-2022-JP」になっていれば、(4)で文字化けしていても、送り先(Thunderbird)で受信した本文は正しく表示できた。(ただし、P の部分が「charset=Shift_JIS」になっていると、送り先で文字化けが発生するかも?)
― (3)のとき、[表示] -> [文字エンコーディング] を確認すると、[日本語(Shift_JIS)] になっている。―― 【B】
― (2)で、添付するテキストファイルの文字コードを UTF-8 や ISO-2022-JP にすると、それに応じて R の部分が「charset=UTF-8;」「charset=ISO-2022-JP;」になる。
R 部分の変化に対応して、【B】は「Unicode(UTF-8)」や「日本語(ISO-2022-JP)」になる。
R が「charset=ISO-2022-JP;」になっているものは、(4)で文字化けは起こらない。
― (4)で、添付ファイルを削除して保存したものは、再び編集画面を開いても文字化けしない。(R がなくなっているから?)
― Draft ファイルをテキストエディタで開き、R の部分(charset=Shift_JIS;)を削除すると、(4)でも本文は文字化けしない。
― Thunderbird 3.1 で上記手順を実行しても R は生成されないし、(4)で文字化けすることもない。
― この現象は、Thunderbird 5.0 、6.0.1 、7.0b1 で再現する。(8.0a2 以降は未検証)

5.0 以降では、添付ファイルをつけて作成・編集したメッセージの保存時に(判別可能な)添付ファイルの文字エンコーディングをヘッダ情報に付加するように変更されているようです(R)。
しかしメッセージ作成画面では、この R 部分が影響してか、本文の文字セットの取り扱いに不都合が起こっているように見えます。
Thunderbird のメッセージペイン、メッセージを開いたタブやウィンドウなどでは、メッセージ内のエンコード形式・文字セットを比較的柔軟に扱って正しく自動表示してくれますが、メッセージ作成画面ではこの融通が効いていないと思われます。

現時点の 6.0.1 で、設定値の変更等による有効な回避策は思い当たりません。
生のテキストファイルではなく ZIP 形式などでアーカイブ化したものを添付するか、3.1 系に戻すぐらいでしょうか。
http://mozilla.jp/thunderbird/download/older/

長くなりましたが、実際たいしたテストはできていません。取りこぼしや勘違いがあったらツッコミ入れてください。

(余談)
電子メールで標準的に使われる文字セット(ISO-2022-JP / 7 bit)と、コンピュータ上での文書作成で使われる標準的な文字セット(Shift_JIS / 8 bit)が異なる文化圏に固有の問題かもしれませんね。
いっそ、Unicode(UTF-8)で統一されていまえば楽だといえますが、Unicode 自体の弱点や過去資産の再利用といった実用面など、いろいろ制約もありそうですし......。


通報する
ページトップ
  
引用付きで返信する  
投稿記事Posted: 2011年9月27日(火) 00:49 
オフライン

登録日時: 2011年9月03日(土) 22:33
記事: 2
お返事遅くなりまして申し訳ございません。

バグですか。こちらの手技の問題なら回避方法があるんじゃないかと思ったりしていたのですが・・・。
ZIPにする、というのは思いつきませんでした。それで対応してみます。

送信側と受信側のエンコード問題での文字化けは割りと聞くのですが、自分のPC内なのに文字化けるのはちょっと悲しいですね。

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


通報する
ページトップ
 プロフィール  
引用付きで返信する  
期間内表示:  ソート  
新しいトピックを投稿する トピックへ返信する  [ 3 件の記事 ] 

All times are UTC + 9 hours


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[69人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
cron
Powered by MozillaZine.jp® Forum Software © phpBB Group , Almsamim WYSIWYG
Japanese translation principally by ocean