• ベストアンサー

HTMLのソースを見ると文字化けしてる。普通の画面表示は問題ない。。。EUCなわけでもない。

<head>で <meta http-equiv="content-type" content="text/html;charset=Shift_JIS"> と指定していて、IEのキャッシュもクリアして、 文字コードはshift_jisで書いてあるファイルで ソース上で <!-- ステータスバー文字列表示 --> と書いてあるコメントの文字列表示の「表示」の 部分がIEからソース表示すると文字化けしています。 これは何故なのでしょうか? その一部分のみです。 CGIなのですが、 CGIのうちのHTMLソースを吐き出しているところです。

質問者が選んだベストアンサー

  • ベストアンサー
  • Dpop
  • ベストアンサー率51% (279/544)
回答No.1

エスクケープ文字「\」を含んでいるためです。 「表」をシフトJISで表記した場合2バイト目に、エスクケープ文字を示す「\」と同じコードが入っています。 そのため、「示」の1バイト目が別の文字に変わってしまうために、文字化けを起こします。 HTMLやCGIを、EUCで書いた方が良い。と書かれている説明をご覧になったことがあると思います。EUCを利用する理由は、このエスクケープ文字による文字化けを防ぐためです。 UNIXの世界では、漢字コードはEUCですので、シフトJISで書かれたソースが文字化けするのは、自然な姿です。 ですので、ある意味「正常な動作」と言うことになります。 Googleなどで、文字コードについて調べて見ると面白いですよ。とても奥が深い世界です。

SEAMOON
質問者

お礼

おおおおおぉ、そうなのですか。 とってもタメになりました。感動です。 ありがとうございました。

すると、全ての回答が全文表示されます。

専門家に質問してみよう