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



All times are UTC + 9 hours

新しいトピックを投稿する トピックへ返信する  [ 9 件の記事 ] 
作成者 メッセージ
 記事の件名: Thunderbirdで文字化け
投稿記事Posted: 2021年11月19日(金) 11:39 
オフライン

登録日時: 2018年1月18日(木) 10:46
記事: 27
Windows10 Pro 64bit V.21H1
Thunderbird v.91.3.1を使用しています。

先日こくみん共済のユーザー登録を済ませたところ、添付ファイルのようなメール(mail_mojibake.jpg)が届きましたが、文字化けしていて読めませんでした。
Thunderbirdに届いている他者からのメール(HTMLを含む)を調べてみましたが、文字化けはありませんでした。
そこでこくみん共済に善処をお願いしましたところ、次の内容のメールが届きました。
---------------------------------------------
【回答内容】
対象のメールはHTML形式となっております。
ご使用のOS・ソフトのバージョンの組み合わせや文字変換の設定によって発生する場合があります。
今回の事象につきましては、メーラーの文字コード(エンコード)設定により文字化けしたものと推測されます。
つきましては、メーラーの文字コード(エンコード)の設定をご確認いただきたいと存じます。
---------------------------------------------
早速Thunderbird v.91.3.1の文字コード(エンコード)を調べたところ(mail_mojibake1.jpg)、「テキストエンコーディングの修復」はありましたが、文字コードを変えるようなところは見つかりませんでした。

どうすればこのような文字化けを治せるのでしょうか?


添付ファイル:
mail_mojibake1.jpg
mail_mojibake1.jpg [ 243.99 KiB | 表示数: 5157 回 ]
mail_mojibake.jpg
mail_mojibake.jpg [ 242.57 KiB | 表示数: 5157 回 ]

_________________
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36 Edg/95.0.1020.53
通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2021年11月19日(金) 16:53 
オフライン

登録日時: 2014年2月22日(土) 00:59
記事: 3672
smmt6001 さん、EarlgreyTea と申します。

smmt6001 さんが書きました:
先日こくみん共済のユーザー登録を済ませたところ、添付ファイルのようなメール(mail_mojibake.jpg)が届きましたが、文字化けしていて読めませんでした。

文字化けの状況を見るに、元のメールの本文はISO-2022-JP(JISコード)で書かれているようです。

smmt6001 さんが書きました:
そこでこくみん共済に善処をお願いしましたところ、次の内容のメールが届きました。

回答文を拝見いたしましたが、古いメールソフトでありがちな事例に対する回避策を紹介するテンプレ回答という印象を持ちました。

smmt6001 さんが書きました:
早速Thunderbird v.91.3.1の文字コード(エンコード)を調べたところ(mail_mojibake1.jpg)、「テキストエンコーディングの修復」はありましたが、文字コードを変えるようなところは見つかりませんでした。

はい、廃止されました。
電子メールの本文をアスキー文字以外で書いた場合、送信側の責任で文字セットとエンコード方式の情報を指定しておく必要があります。
本件メールの場合は、その情報の形式に誤りがあるか、そもそも指定されていなかったものと推測します。

文字化けしているメールを右クリック>メッセージを保存、またはメッセージリストからドラッグしてデスクトップでドロップすると、eml形式のファイルで保存できます。
そのファイルをエンコード(文字コード)を指定して読み込めるテキストエディターで開いてみてください。
たぶん、「日本語 (JIS)」などで読み込むと本文部分が読めるはずです。

開いたものはメールのソースになります。
そこから「Content-Type:」で始まる行と、「Content-Transfer-Encoding:」で始まる行を調べてください。
ただし、HTMLメールとのことなので、たぶんマルチパートになっていて該当する行は複数あると思います。
見方について説明すると長くなってしまうので、下記を参考にしていただければと思います。


HTMLパートと(もしあれば)テキストパートの Content-Type: の行とContent-Transfer-Encoding: の行をコピペして教えてください。
(丸ごと全部見せていただいたほうが確実ですが、個人情報も含まれているでしょうからこの方法を提案させていただいております)

それを元に検討した上で、再度こくみん共済さんに(技術的な情報を添えて)改善の要望をすることをおすすめします。

なお、 Charset Menu という拡張機能を追加しますと、本文だけですがテキストエンコーディングを一時的に指定して表示することができます。
https://addons.thunderbird.net/ja/thund ... rset-menu/

_________________
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:94.0) Gecko/20100101 Firefox/94.0


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2021年11月20日(土) 14:37 
オフライン

登録日時: 2018年1月18日(木) 10:46
記事: 27
EarlgreyTea様へ

文字コードは変えられないことは大変不便です。
どうして廃止になったのですか?
復活することは不可能でしょうか?

Q)HTMLパートと(もしあれば)テキストパートの Content-Type: の行とContent-Transfer-Encoding: の行をコピペして教えてください。

A)次のような記述がありました。
1)
X-Mailer: PHPMailer 6.0.7 (https://github.com/PHPMailer/PHPMailer)
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="b1_mtqZMenUQeMPmDNZJ6zmrEOd0nrqc5pRCWNlad0WRG8"
Content-Length: 17615

This is a multi-part message in MIME format.
--b1_mtqZMenUQeMPmDNZJ6zmrEOd0nrqc5pRCWNlad0WRG8
Content-Type: text/plain; charset=ISO-2022-JP-MS

2)
--b1_mtqZMenUQeMPmDNZJ6zmrEOd0nrqc5pRCWNlad0WRG8
Content-Type: text/html; charset=ISO-2022-JP-MS
Content-Transfer-Encoding: quoted-printable

以上です。
よろしくお願いいたします。

_________________
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36 Edg/95.0.1020.53


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2021年11月20日(土) 17:39 
オフライン

登録日時: 2014年2月22日(土) 00:59
記事: 3672
Content-Type: text/plain; charset=ISO-2022-JP-MS
に対応する Content-Transfer-Encoding: 行はなかったのでしょうか。
テキストパートがあるので、試しにメッセージの表示形式をプレーンテキストに切り替えてみてください。
PHPからの送信であることと、charset=ISO-2022-JP-MS が気になりますね。

_________________
Mozilla/5.0 (Android 10; Mobile; rv:94.0) Gecko/94.0 Firefox/94.0


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2021年11月21日(日) 09:21 
オフライン

登録日時: 2018年1月18日(木) 10:46
記事: 27
EarlgreyTea様

Content-Transfer-Encoding: 行は2)しかなかったですね。

テキストパートがあるので、試しにメッセージの表示形式をプレーンテキストに切り替えてみてください。
これは具体的にはどうするのでしょうか?

_________________
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36 Edg/95.0.1020.53


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2021年11月21日(日) 10:57 
オフライン

登録日時: 2014年2月22日(土) 00:59
記事: 3672
メニュー>表示>メッセージの表示形式 です。

EarlgreyTea さんが書きました:
そのファイルをエンコード(文字コード)を指定して読み込めるテキストエディターで開いてみてください。
たぶん、「日本語 (JIS)」などで読み込むと本文部分が読めるはずです。
についてはどうでしょう。

_________________
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:94.0) Gecko/20100101 Firefox/94.0


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2021年11月21日(日) 13:00 
オフライン

登録日時: 2018年1月18日(木) 10:46
記事: 27
EarlgreyTea様

次のエンコードで読み直した結果、〇の付いたエンコードで読むことができました。

〇 日本語(自動選択)(50932,_autodetect)
X 日本語(EUC)51932,euc-jp)
〇 日本語(JIS)(50220,iso-2022-jp)
〇 日本語(JIS1バイト カタカナ可)(50221,csISO2022JP)
〇 日本語(JIS1バイト カタカナ可 -SO/SI)(50222,iso-2022-jp)
X 日本語(シフト JIS)(932,shift_jis)

_________________
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36 Edg/95.0.1020.53


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2021年11月21日(日) 15:44 
オフライン

登録日時: 2014年2月22日(土) 00:59
記事: 3672
smmt6001 さんが書きました:
〇 日本語(JIS)(50220,iso-2022-jp)
〇 日本語(JIS1バイト カタカナ可)(50221,csISO2022JP)
〇 日本語(JIS1バイト カタカナ可 -SO/SI)(50222,iso-2022-jp)

smmt6001 さん、なにやらJISコードの選択肢の細かいテキストエディターをお使いのようですね。
テキストパート部分かと思いますが、日本語JISコードの本文がエンコードされずにそのまま記載されていたということですね。
HTMLパートは quoted-printable でエンコードされているようなので、「=」+「16進数2桁」の3文字の羅列になっているかと思います。

問題なのは「charset=ISO-2022-JP-MS」です。
Thunderbird はこのテキストエンコーディング名を解釈しません。
調べてみましたが、ずっと昔のバージョンでも対応していたことはありません。
テキストエンコーディングを指定したり、自動判別によって表示できていただけです。

ISO-2022-JP-MS というのは、ISO-2022-JP でサポートしていない半角カナやその他の機種依存文字をお構いなしに送信してくる Microsoft製のメールソフトに対応するために、 PHP 5.2.1 で実装された ISO-2020-JP の拡張版です。
UTF-8 が使えなかった頃の時代遅れのバッドプラクティスだと私は思います。
したがいまして、こくみん共済へは
    「charset=ISO-2022-JP-MS」が指定されていると Thunderbird は対応していないので、
    「charset=ISO-2022-JP」としていただくか、UTF-8 に変更してください
という要望を出してみてください。

さて、Thunderbird 91.3.2 がリリースされたわけですが、
引用:
[修正] “テキストエンコーディングを修復” メニューアイテムが機能しない問題を修正
とあります。
試しに、ISO-2022-JP で書いた本文に「Content-Type: text/plain; charset=ISO-2022-JP-MS」のヘッダーを付けたテストメールをインポートしてみると文字化けしますが、メニュー>表示>テキストエンコーディングを修復 で読めるようになりました。

_________________
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:94.0) Gecko/20100101 Firefox/94.0


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2021年11月22日(月) 12:14 
オフライン

登録日時: 2018年1月18日(木) 10:46
記事: 27
EarlgreyTea様

こくみん共済へは
「charset=ISO-2022-JP-MS」が指定されていると Thunderbird は対応していないので、
「charset=ISO-2022-JP」としていただくか、UTF-8 に変更してください
という要望を出しました。

大変詳しい解説をして頂き感謝しております。

_________________
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36 Edg/96.0.1054.29


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

All times are UTC + 9 hours


オンラインデータ

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


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

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