MozillaZine.jp フォーラム
https://forums.mozillazine.jp/

ダウンロードファイルの文字化け
https://forums.mozillazine.jp/viewtopic.php?f=2&t=9224
ページ 11

作成者:  color [ 2009年10月09日(金) 20:46 ]
記事の件名:  ダウンロードファイルの文字化け

ファイルをダウンロードしてそのファイル名の中に日本語が含まれていると、文字化けがおきるのですがどのようにすれば直るでしょうか?
もし同じ症状になった方で直せた方がいましたらおしえていただきたいです。

宜しくお願いします。

矢崎

作成者:  ぼてじゃこ [ 2009年10月09日(金) 21:21 ]
記事の件名:  Re: ダウンロードファイルの文字化け

毎度の事ですが、質問に際しては OS の種類と Mozilla 製品(この場合は Firefox )のバージョンぐらいは
提示していただかないと困ります。

で、
文字化けするファイルの出所、ファイル形式も分からないままに「文字化けを直したい」と仰られても、
これまた千里眼でもない限り、応えようがありません。

と云う事で、以下の情報を提示して下さい。
  1. OS の種類と Firefox のバージョン
  2. ファイルの出所とファイル形式
  3. ファイルを開こうとしているソフトウェアの名称とバージョン
  4. IE など他のブラウザでダウンロードしても文字化けするのかどうか

作成者:  color [ 2009年10月10日(土) 00:14 ]
記事の件名:  Re: ダウンロードファイルの文字化け

説明不足ですみませんでした。

OSはXP home basicのSP3を使用しており、firefoxは3.5.3を使用しています。
ただverを3にしたときから文字化けがとまらなくなりました。
web上から添付ファイルをDLするときも、webメールからDLするときも日本語の部分はかならずといっていいほど文字化けをします。ファイル形式は関係なく、日本語の部分が文字化けします。

IEで試したところ普通にDLできました。

情報不足ですみませんでした。

作成者:  AR [ 2009年10月10日(土) 01:14 ]
記事の件名:  Re: ダウンロードファイルの文字化け

color さんが書きました:
説明不足ですみませんでした。

OSはXP home basicのSP3を使用しており、firefoxは3.5.3を使用しています。
ただverを3にしたときから文字化けがとまらなくなりました。
web上から添付ファイルをDLするときも、webメールからDLするときも日本語の部分はかならずといっていいほど文字化けをします。ファイル形式は関係なく、日本語の部分が文字化けします。

IEで試したところ普通にDLできました。

情報不足ですみませんでした。

そのweb上からとかwebメールからとは具体的にどこの事でしょうか.
「このURLのこのページのこのリンクをクリックしてファイルをダウンロードすると
本来こうであるべきファイル名がこのように文字化けする」など
具体的な手順と状況を示すと他の人の環境で検証する事ができ, 解決に繋がります.

ただしwebメール等、ログインを必要とするサービスの場合
ログイン後のURLを他人に公開する事は危険を伴う事がありますので
「どのサービスのどういう画面で」、など URL なしでお願いします.

作成者:  color [ 2009年10月10日(土) 02:07 ]
記事の件名:  Re: ダウンロードファイルの文字化け

yahooメールを使用して、ファイルをDLするときに文字化けを起こします。99.9%ここからのDlで文字化けをしてしまいます。

web上からのDLですが、かなり前に行ったため忘れてしまいました。すみません。


yahooメールを使用してファイルをDLするときに文字化けをしてしまいます。

作成者:  AR [ 2009年10月10日(土) 03:22 ]
記事の件名:  Re: ダウンロードファイルの文字化け

color さんが書きました:
yahooメールを使用して、ファイルをDLするときに文字化けを起こします。99.9%ここからのDlで文字化けをしてしまいます。

web上からのDLですが、かなり前に行ったため忘れてしまいました。すみません。


yahooメールを使用してファイルをDLするときに文字化けをしてしまいます。

調べてみたところ, Yahoo が返してくる応答がどうもおかしいようです.

Thunderbird を用いて「テスト.zip」を Yahoo メールのアカウントに送信してみました.
このときメール中の添付ファイルのヘッダには以下が含まれていました.
コード:
Content-Disposition: inline;
 filename*=ISO-2022-JP''%1B%24%42%25%46%25%39%25%48%1B%28%42%2E%7A%69%70

これは RFC2231 で定義されている記法で,
ファイル名は URL エンコードされた ISO-2022-JP の文字列
「%1B%24%42%25%46%25%39%25%48%1B%28%42%2E%7A%69%70」である, という意味です.
これをデコードすると「テスト.zip」となります.

Yahoo メールの従来のバージョンでダウンロードした場合
以下のようなヘッダが返ってきました.
コード:
Content-Disposition: attachment; filename="filename*=ISO-2022-JP''%1B%24%42%25%46%25%39%25%48%1B%28%42%2E%7A%69%70"

これは, ファイル名は「filename*=ISO-2022-JP''%1B%24%42%25%46%25%39%25%48%1B%28%42%2E%7A%69%70」である, という意味で, 当然そのままのファイル名になります.
ただし, ファイル名に使えない文字は「_」等に置き換えられるので,
OS によって多少異るかもしれません.
早い話が「filename=」等が余計で, 正しくは以下のようなヘッダであるべきです.
コード:
Content-Disposition: attachment; filename*=ISO-2022-JP''%1B%24%42%25%46%25%39%25%48%1B%28%42%2E%7A%69%70


また, Yahoo メールのベータ版でダウンロードした場合は
以下のようなヘッダが返ってきました.
コード:
Content-Disposition: attachment; filename="%E3%83%86%E3%82%B9%E3%83%88.zip";

これは, ファイル名は「%E3%83%86%E3%82%B9%E3%83%88.zip」であるという意味です.
IE は特殊で, これを URL エンコードされた UTF-8 の文字列としてデコードするため,
ファイル名は「テスト.zip」になります.
他のブラウザではそのままのファイル名になります.
IE 以外のブラウザの場合は RFC2231 に従い以下のようになっているべきです.
コード:
Content-Disposition: attachment; filename*=UTF-8''%E3%83%86%E3%82%B9%E3%83%88.zip


いずれの場合の Yahoo 側のバグといえると思うので,
報告をして気長に待つのがよいかと思います.

以下, Content-Disposition に関して Hotmail, sky Drive で似たような
トラブルが報告されています.
http://forums.mozillazine.jp/viewtopic.php?t=9140
http://forums.mozillazine.jp/viewtopic.php?t=9105
ブラウザごとに適切な Content-Disposition の値を返す方法は
あまり知られていないようですね.

ページ 11 All times are UTC + 9 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/