MozillaZine.jp フォーラム https://forums.mozillazine.jp/ |
|
添付ファイルのファイル名を常にiso-2022-jpでエンコードしたい https://forums.mozillazine.jp/viewtopic.php?f=3&t=14514 |
ページ 1 / 1 |
作成者: | gery_yoshi [ 2013年12月21日(土) 21:25 ] |
記事の件名: | 添付ファイルのファイル名を常にiso-2022-jpでエンコードしたい |
gery_yoshi と申します. yahooの知恵袋で教えてもらい,添付ファイルのファイル名がなぜ化けるのか納得したのですが, 環境の変更方法が調べてもわからなかったので質問させてください. Thunderbird 24.2.0 + WindowsXPという環境をメインで 使い続けてきたのですが,XPのサポート終了によって Thunderbird 16.0.2 + Windows7 に環境を変えることになりました. ところが,Win7でメールを送ると添付ファイル名が文字化けするとALMailの利用者から 指摘されて,困ってしまったのですが, メールのヘッダを調べることを知恵袋で教えてもらい, WinXP では,iso-2022-jp でエンコードされていたファイル名が, Win7 では,UTF-8になっていることで,文字化けしたことがわかりました. あとは,Win7のThunderbird の設定をiso-2022-jpに変えればよいので, 安心したのですが,google で調べてみたらうまく調べられません. 「Thunderbird 添付ファイル 設定 iso -2022-jp」 などと検索してみたのですが,やり方がわかりませんでした. どのように調べればよいのでしょうか? そもそもなぜ(バージョンは異なりますが,)Thunderbirdで添付ファイルのエンコードの方法が 異なるのでしょうか?よくわかりません. どなたかご教授願います. |
作成者: | kiki [ 2013年12月21日(土) 22:18 ] |
記事の件名: | Re: 添付ファイルのファイル名を常にiso-2022-jpでエンコードしたい |
*質問・投稿する前に、サポートサイトやヘルプ、このフォーラム内を検索・閲覧して 該当項目、同類・類似事例がないか、確認してみましょう。 また、広くインターネット上でも、同類・類似事例がないか、調べてみましょう。 *質問・投稿する前に フォーラムの利用について をしっかり読んで、その内容を理解 した上で、それに沿って投稿しましょう。 *質問した後やアドバイスをもらった後は、放置せずに、結果や経緯を必ず書くように しましょう。ここは、ユーザ同士で、各種情報・事例を、シェアする場です。 問題の現象は、以下の過去トピックと同様ですか? [参照] MozillaZine.jp フォーラム - テキストファイル添付メールを「転送」「返信」する際に編集画面で文字化け表示されます 本文と添付ファイル名のコードが異なっても、添付ファイル名が文字化けすることはない のですが、ご自分宛に、テストメッセージを送受信しても再現しますか? 次に、Thunderbird 16.0.2 は、かなり以前にサポートが終了したバージョンです。 セキュリティ的にも危険ですので、すみやかに最新版のバージョン(現在 24.2.0)にア ップデートされるのをお勧めします。 |
作成者: | gery_yoshi [ 2013年12月22日(日) 00:13 ] |
記事の件名: | Re: 添付ファイルのファイル名を常にiso-2022-jpでエンコードしたい |
kiki様 ご回答頂き有り難うございます. このフォーラムでも関連がありそうなものに目を通しておこうと思い 「添付ファイル 設定」 などで検索したのですが, 教えて頂いた記事は目を通していないものです. お手数をおかけしてすみません. ここに書かれていることは,iso-2022-jpできたメールに返信すると そこに添付するファイル名もiso-2022-jpになり,UTF-8 できたメールに 返信すると添付するファイル名もUTF-8になるということでしょうか? ところで,Thunderbird は会社でしか使っていないので,24日の火曜日にならないと, 自分にメールを出してみて再現するかどうか調べられないのです. 申し訳ありません. ただ,メールはBCCで自分にも送ってます. 問題となったメールは,UTF-8もiso-2022-jpのどちらも 自分の環境ではファイル名は化けておりません. ただ,送信者からきたメールをWin7で返信するときに ファイルを添付したら,UTF-8でファイル名がエンコードされ, 文字化けしたと連絡を受けたので,同じメールをWinXPで返信し 同じファイルを添付したら,iso-2022-jpでファイル名がエンコードされました. 同じメールに対して同じように返信し,添付ファイルも同じです. メールサーバーにIMAP4で接続しているので,Win7からもWinXPからも 同じメールを読むことができます. 24日の火曜日に自分宛に出してみて,また報告させて頂きます. Win7 のThunderbird は,この質問を出す前に最新版にアップしております. ただ,文字化けの現象が起きたときはそのバージョンでした.久しぶりに使ったので 古かったのです. よろしくお願いいたします. |
作成者: | 偶然的通行人 [ 2013年12月22日(日) 08:08 ] |
記事の件名: | Re: 添付ファイルのファイル名を常にiso-2022-jpでエンコードしたい |
横から失礼します。 いくつか思い当たる事柄をコメントさせていただきます。 (1)添付ファイルのファイル名を "常に ISO-2022-JP でエンコードする" ことは現実的ではない 日本語環境で使う Thunderbird は、添付ファイル名に ISO-2022-JP の文字符号化方式では扱えない文字を含む場合、UTF-8 などの対応可能なエンコード方式を自動的に選択します。 (参考) ISO-2022-JPと非標準的拡張使用 http://ja.wikipedia.org/wiki/ISO-2022-J ... F.E7.94.A8 あまりいい例を思いつかないのですが、ファイル内はまったく同じ内容でファイル名だけ異なる次のようなテキストファイルを作り、一つのメールに添付してみてください(関連後述)。 倶利伽羅峠.txt …… A 俱利伽羅峠.txt …… B 酒呑童子.txt …… C 酒吞童子.txt …… D 標準的な状態の日本語版 Thunderbird なら、A と C の添付ファイル名は ISO-2022-JP でエンコーディングされますが、B と D は UTF-8 になるはずです。 A は先頭の文字が、C は 2 文字目が JIS90 規格ですけど、B と D はそれぞれの該当文字が JIS2004 規格のうちの新規追加文字なので、ISO-2022-JP ではエンコーディングできないからです。 JIS2004 対応フォントを入れてある Windows XP 上の Thunderbird 24.2.0 から上記を送信し、手持ちの複数のメールソフト(同環境)で受信してみました。 ・Outlook Express 6 (最終更新 2008年4月) …… テスト用に保持 ・EdMax 2.85.6F (最終更新 2005年5月) …… テスト用に保持 のふたつは、B 、D のファイル名が文字化けを起こしました。 ・Thunderbird 24.2.0 (最終更新 2013年12月) …… プライベート用の主機/仕事用の補機 ・Sylpheed 3.3.0 (最終更新 2012年10月) …… 仕事用の主機 のふたつは、文字化けせず正常に表示されました。 (2)Windows XP と Windows 7 では、標準フォントの文字コード体系が異なる Windows XP では旧来からある JIS90 の体系が標準ですが、Windows Vista 以降は JIS2004 の体系が標準になっています。 まったくの別物ではなく拡張版なので問題なく表示できることが多いですけど、両者の間で字体の変化や文字化けなどの問題が起こるケースもしばしばあります。 ごく大雑把な言い方になりますが、JIS90 < JIS2004 なので、文字化けについては Winmdows XP など JIS90 体系で作成した文字列を、Windows 7 など JIS2004 体系で展開する分には問題は起こりにくいといえますが、その逆は起こりやすくなるといえます。(字形の変化は随所で起こりえます。) 文字種が増えた JIS2004 体系では、ISO-2022-JP ではエンコードできない文字も増えたといえます。モニタ上では普通に表示されるので、違和感なくファイル名などにしてしまう可能性はありますが、ISO-2022-JP でエンコードできなければ UTF-8 などでエンコードされます(事例上述)。 Windows XP 側で JIS2004 対応のフォントを入れていれば、文字化けせず表示できるケースもありますが、アプリケーションが未対応だとはやり文字化けを起こすはずです。 Winmdows XP などで作成したものでも、Windows 7 で取り込んでしまえば JIS2004 体系で扱われますから、次にそこから出て行くときは JIS90 のままではありえません。これを Windows XP などで受け取れば、条件によっては文字化けを起こす可能性はあるのではないでしょうか。 もし受信側が UTF-8 などのエンコーディングを適切に解釈できない環境条件であれば、なおさらだと思います。 (3)電子メールの仕組み自体、マルチバイト文字の扱いが必ずしも得意ではない 電子メールは、もともと ASCII 文字セットなどのシングルバイトから始まったもので、日本語などのマルチバイト文字は拡張的に取り入れられてきたものです。今日では日本語(かな・漢字)であっても一般的な場面での実用性は問題ないレベルといえますが、それでも条件によってはユーザーの期待に反する結果を生み出すことがあります。 "文字化け" などのトラブルが起こり、それを解決するために労力を割くことになるぐらいなら、最初から添付ファイル名を ASCII(半角英数文字)のみで書いたほうがトラブルが少ないという考え方もあります。アルファベットの文字列は純粋な "英語" でなくても「ローマ字表記法」による "日本語" でもかまわないわけですし、いまでもそういう方式が推奨されることがあります。 ファイル名が日本語であることか、添付ファイル自体が確実に伝わることか、どちらを重視するのかという話ですね。理想はその両立ですけど......。 (4)AL-Mail はすでに開発が止まって久しい AL-Mail は一時代を画した国産メールソフトですが、2006 年 1 月末の更新を最後に、開発が止まっています。 公式対応は Windows XP までで、原則として Windows Vista 以降には対応していません。当然、文字コードまわりの対応も JIS90 止まりか、少なくとも JIS2004 への対応がきちんとされているとは考えにくいです。 仮に AL-Mail の最終更新版を使っていたとしても 8 年近く前のもので、今日までメンテナンスはいっさいおこなわれていませんから、セキュリティ面や近年のネットワーク事情への対応などで予期せぬ問題を多数含んでいる可能性が高いと思われます。 Thunderbird でたとえれば、年代的に 1.0.7 や 1.0.8 あたりをいまだに使い続けているようなものですから、Mozilla 流にいえば、セキュリティ上たいへん危険なので直ちに最新バージョンへ ―― といったところでしょうか。 (参考) http://cse.ffpri.affrc.go.jp/akema/sec_ ... dows7.html 直接的な解決策ではなく申し訳ありませんが、問題を考えるヒントにでもなればということで。 おかしなことを書いていたら補足・訂正のツッコミをお願いします。> みなさま |
作成者: | kiki [ 2013年12月22日(日) 20:06 ] |
記事の件名: | Re: 添付ファイルのファイル名を常にiso-2022-jpでエンコードしたい |
gery_yoshi さんが書きました: ここに書かれていることは,iso-2022-jpできたメールに返信すると そこに添付するファイル名もiso-2022-jpになり,UTF-8 できたメールに 返信すると添付するファイル名もUTF-8になるということでしょうか? いえ、違います。 「添付ファイル名」ではなく、「本文」が文字化けするという問題です。 添付ファイルも、テキストファイルのケースです。 同じケース(問題)ではないということですね。 gery_yoshi さんが書きました: yahooの知恵袋で教えてもらい,添付ファイルのファイル名がなぜ化けるのか納得したのですが, 環境の変更方法が調べてもわからなかったので質問させてください. なぜ添付ファイル名の文字化けが起きるのか、その理由を納得しているのならば、どう対処 すればいいかは、おのずと明らかだと思うのですが・・・。 どうされたいのですか? コーディングは、Thunderbird で、何で送信したいかを選択・指定すれば、それでできます。 #[オプション] > [表示] > [書式] > [フォントと配色] > [詳細設定] > [文字エンコーディング] 送信する都度に、変更することもできます。 #[メッセージ作成ウィンドウ] > [メニュー] > [オプション] > [文字エンコーディング] 但し、添付ファイル名を、本文と異なる個別なエンコードする設定はありません。 gery_yoshi さんが書きました: ただ,送信者からきたメールをWin7で返信するときに ファイルを添付したら,UTF-8でファイル名がエンコードされ, 文字化けしたと連絡を受けたので,同じメールをWinXPで返信し 同じファイルを添付したら,iso-2022-jpでファイル名がエンコードされました. 同じメールに対して同じように返信し,添付ファイルも同じです. Windows 7 と Windows XP の Thunderbird では、添付ファイル名が異なるエンコードに なるということですか? それぞれの Thunderbird の設定内容は、まったく同じでしょうか? まず、以下の点を、整理して、明確にしてみましょう。 そうしないと、問題点が不正確になります。 1.新規メッセージで起きるのか、返信や転送で送るのか。 それともすべてで起きるのか。 2.プレーンテキスト形式のメッセージで起きるのか、HTML 形式のメッセージで起き るのか。 3.返信や転送の場合ならば、元の受信メッセージは、どのようなエンコードなのか。 本文のエンコードと、添付ファイルのエンコードです。 4.添付ファイル名の違いは関係ないか。 つまり、日本語(漢字などのマルチバイト)なのか、英語(ASCII 文字などの半角) なのかどうかです。 5.相手側で文字化けするのは、本文と添付ファイルのエンコードに違いがあった場合 なのか。 一致する同一のエンコードの場合は、添付ファイル名の文字化けは起こらないのか。 #メールクライアント側の仕様にもよります。 つまり、再現条件と手順を、整理して明らかにするということです。 更に、問題の起きるメッセージのソースをコピーして、ここに貼り付けていただくと、より わかりやすくなります。 メッセージをやりとりする相手がいることですので、ISO-2022-JP でエンコードしたものを 送るのが、必ずしも最適とは限らないケースもあり得るでしょう。 もちろん UTF-8 も同様です。 #OS の違いや、フォントの扱いの違いなども影響することがあります。 結局は、相手側の環境を配慮して、問題の起こりにくい無難なエンコードを選択されるのがよ ろしいかと思います。 また、添付ファイル名で云えば、日本語はできるだけ使用せずに、半角英数字のみにする工夫 も必要かも知れません。 相手側の環境が不明な場合は、日本語のファイルは、ZIP などの圧縮ファイルで英数字のみの ファイル名にして、その中に収める方法も有用です。 #本文メッセージで、そのような処理をしていることを補足して伝える配慮があれば、 相手側も理解しやすいでしょう。 【余談】 gery_yoshi さんが書きました: Win7 のThunderbird は,この質問を出す前に最新版にアップしております. 了解です。 バージョンが異なると、問題も変化する場合がありますので、まずは現在のサポート対象のリ リース版で確かめてみるのがポイントになります。 環境を変更して整えるために、わざわざサポート外の古いバージョンを用いるのはやめましょ う。 |
作成者: | gery_yoshi [ 2013年12月25日(水) 17:07 ] |
記事の件名: | Re: 添付ファイルのファイル名を常にiso-2022-jpでエンコードしたい |
偶然的通行人様,kiki様 長文のご回答を頂き有り難うございます. 恐縮しております. まず偶然的通行人様へのご回答ですが, (1)のファイル名をつけて,両方の環境でメールを送ってみました. 両方の環境で,AとCは,iso-2022-jpでエンコードされ,BとDはUTF-8で エンコードされました.仰るとおりになりました. ただ,よくわからないのですが,WinXP sp3で何も特にしてなくても BとDの文字は文字化けせずに表示されました.私の環境はJIS2004に対応している という理解でいいのでしょうか? (2)は,了解いたしました.私の職場は来年4月からWinXPの利用が禁止されるため, 通信相手がwindowsの場合は,vista以降になります.Macユーザーの方には どのように対処すればいいのかはこれから勉強します. (3)添付ファイルを送ることが,使いやすいグループウェアへの変更にともなって 減少しそうです.添付するときは,なるべく英字名を用いることにします. (4)に関しては,仰ることはわかりますが,私の大事な取引先ですので, メーラーを変えてくれとはとても言えません. 次に,kiki様へのご回答です. なぜ,添付ファイルに文字化けがおこっているかわかったというのは, UTF-8にファイル名がエンコードされたからだということです. これが正しいのかよくわからなくなっております. >但し、添付ファイル名を、本文と異なる個別なエンコードする設定はありません。 私は最初これができると思っておりまして,その方法をここで伺ったのでした. ただ,偶然的通行人様とkiki様がご指摘されるように常にiso-2022-jpでエンコードするのは 現実的とはいえないのですよね. Thunderbird の設定が同じであるかというと,設定のコピーの仕方がわからなかったので, 新たに設定したので,自信はありません. win7 で ファイル名がUTF-8 になる症状は, 1. 新規ファイルではおきませんでした.返信はできなかったので,転送しましたが,おきませんでした. ただ,ソースで本文が化けております.(TB上では化けておりません) 送られてきたメールは,iso-2022-jpだと思うのですが,確認願います. X-Mailer: AL-Mail32 Version 1.13 Content-Type: text/plain; charset=iso-2022- jp で本文がソース表示で化けておりません. これを転送すると,ヘッダーが, Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit になり本文がソース内では化けます. 2.常にプレーンテキストに設定してます.両方の環境でプレーンテキストにしてます. 3.相手からのメールは,1.に書いたようにiso-2022-jp だと思うのですが, 違いますでしょうか・・添付ファイルはありません.こちらから返信の時に添付しているのみです. 4.添付ファイル名は,特に特殊な文字は使っておりません.ほとんどが全角カタカナです. また,1.の新規ファイルでは,添付しましたが,iso-2022-jpでエンコードされました. 5.はどのようにすればよいのかわかりません. 以上ですが,再現しなかったので,よくわからなくなっております. バージョンが古かった件ですが,win7の環境ではTbはインストールしたもののずっと使っていなくて, 先日win7で作業したファイルを添付するので,win7から送った方が楽だと思い, 久しぶりに使ったので古かったのです.その後,アップデートが実行されて最新版になりました. お騒がせして申し訳ありません. すみません.なぜか書式が一定になりません.見苦しくてすみません. |
作成者: | kiki [ 2013年12月26日(木) 10:15 ] |
記事の件名: | Re: 添付ファイルのファイル名を常にiso-2022-jpでエンコードしたい |
gery_yoshi さんが書きました: なぜ,添付ファイルに文字化けがおこっているかわかったというのは, UTF-8にファイル名がエンコードされたからだということです. これが正しいのかよくわからなくなっております. 当初の教えてもらったという内容は、以下ですね。 #最初から、該当サイトの投稿名と URL を提示しておいてください。 そうすれば、経緯が具体的に、伝わりやすくなるでしょう。 [参照] メールソフトの添付ファイルのファイル名の文字化けについて - Yahoo!知恵袋 上記で紹介されていたのが、このフォーラムの過去トピックですね。 [参照] MozillaZine.jp フォーラム - Thunderbird8〜日本語を含む添付ファイルを送信すると、相手側で文字化けする〜 添付ファイル名が文字化けする原因を、理解されているわけではなく、ヘッダの違いを知った ということですね。 この事例は、簡単に言うと、添付ファイル名の扱い・読み方が、メールソフトの仕様によって 異なるので、問題を起こすというものです。 今回の相手先の AL-Mail の事例も、ほぼ同様の問題かと思われます。 加えて、偶然的通行人 さんから説明のあった OS の違いによるフォントの扱いの問題も、起き ているかも知れません。 kiki さんが書きました: 但し、添付ファイル名を、本文と異なる個別なエンコードする設定はありません。 gery_yoshi さんが書きました: 私は最初これができると思っておりまして,その方法をここで伺ったのでした. ただ,偶然的通行人様とkiki様がご指摘されるように常にiso-2022-jpでエンコードするのは 現実的とはいえないのですよね. そうではありません。 まず、Tunderbird も含めたメールソフトは、通常 ISO-2022-JP 名のテキストファイルは、そ のまま ISO-2022-JP 名で、メッセージに添付します。 以下のようなヘッダ情報になります。 #メッセージヘッダではなく、添付ファイルのヘッダ情報です。 #添付ファイル名は、「サンプルファイルISO-2022-JP.txt」です。 コード: Content-Type: text/plain; charset=ISO-2022-JP; name="=?ISO-2022-JP?B?GyRCJTUlcyVXJWslVSUhJSQlaxsoQklTTy0yMDIyLUpQLnR4dA==?=" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0*=ISO-2022-JP''%1B%24%42%25%35%25%73%25%57%25%6B%25%55%25%21%25; filename*1*=%24%25%6B%1B%28%42%49%53%4F%2D%32%30%32%32%2D%4A%50%2E%74%78; filename*2*=%74 上記のヘッダ情報に、添付ファイル名があるのですが、その中の「name」と「filename」のど ちらを、どう扱うか(どのようにデコードするか)で、結果として表示が異なるのです。 UTF-8 の添付ファイル名になるのは、先に偶然的通行人 さんが、書かれたとおりです。 偶然的通行人 さんが書きました: 日本語環境で使う Thunderbird は、添付ファイル名に ISO-2022-JP の文字符号化方式では扱えない文字を含む場合、UTF-8 などの対応可能なエンコード方式を自動的に選択します。 次に、今回の問題となった相手先の AL-Mail のケースについてです。 相手先の AL-Mail が、どのように扱うかは不明ですが、おそらく正常にデコードしていないか、 仕様上の違いから、異なる扱い(デコード)をおこなっているものと思われます。 UTF-8 への対応が、不十分なのかも知れません。 あるいは、環境の違いにより、日本語フォントの扱いが異なるために、正常に表示できない場合 もあるかと思われます。 ですので、相手先のメールソフトなどの仕様によって、このような問題が起きる場合があるので、 配慮が必要になります。 なぜなら、相手先が、取引先の場合などは、メールソフトを変更してくれとは云えないからです。 #相手先のメールソフトに問題があるとわかっていても、云えませんよね。 #企業・団体組織内で、統一管理しているため、仕様が固定化されているところもあります。 「常に ISO-2022-JP でエンコードする」は、自分にとっては都合良くても、相手先によっては 不都合の押しつけになる可能性があることを、知って、理解しておく、ということになります。 現実的であるかどうかは、相手先の事情によって、変わってくるということです。 つまり、ISO-2022-JP でも、十分現実的なのですが、海外では言語やフォントも異なりますし、 その扱い方も様々ですので、やりとりする相手によって、問題の起きにくい対処と工夫をおこな っておくのがいいでしょう、ということになるのです。 この点は、先に書いたとおりです。 [補足] インターネットの標準規格に RFC というものがあります。 Thunderbird は、RFC 規格に準拠して、開発されています。 より標準規格に沿った仕様ですが、完全・完璧というわけではありません。 他のメールソフトと同様に、独自機能や仕様があり、バグもあります。 その点も誤解のないように、理解されてください。 長くなりますが、次に続けます。 |
作成者: | kiki [ 2013年12月26日(木) 10:20 ] |
記事の件名: | Re: 添付ファイルのファイル名を常にiso-2022-jpでエンコードしたい |
gery_yoshi さんが書きました: 送られてきたメールは,iso-2022-jpだと思うのですが,確認願います. X-Mailer: AL-Mail32 Version 1.13 Content-Type: text/plain; charset=iso-2022-jp で本文がソース表示で化けておりません. これを転送すると,ヘッダーが, Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit になり本文がソース内では化けます. 「Content-Type: text/plain」は、プレーンテキスト形式であることを表わしています。 「charset=ISO-2022-JP」は、文字エンコーディングが、ISO-2022-JP であることを表わして います。 よって、文字どおり、そのとおりです。 がしかし、本文が文字化けするのは、表示上の文字エンコーディングがマッチしていないか、文 字エンコーデイングが正しくない場合です。 Thunderbird の表示メニューやソース表示の表示メニューにある「文字エンコーデイング」で、 [自動判別] にするか、他の各種文字コードを選択して、正常に表示されるものが、そのメッセー ジの文字コードになります。 #添付ファイルは、テキストであっても、「Content-Transfer-Encoding: base64」と なっていて、base64 でエンコード(変換)されていますので、ソース表示では読めま せん。これは、仕様です。 上記の表示を確かめることで、実際の文字コードがわかります。 手元で、実際に確かめてみてください。 #テストメッセージを作成し、送信メッセージの下書き保存や、自分宛に 送受信・返信・転送などで、確かめることができます。 【結論】 今回の問題は、Thunderbird のそれよりも、相手先の AL-Mail 利用に伴うものでしょう。 今回を契機にして、世の中には様々なメールソフトの利用があり、その仕様も相違点もあること を知る機会にされて、時代遅れだったり、現実的でなかったとしても、相手側に配慮した無難な 方法で対処・工夫されるのをお勧めします。 |
ページ 1 / 1 | All times are UTC + 9 hours |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |