CGI-BBS > CGI > Perl > エンコードを日本語にするには?


カレッヂ
カレッヂ


質問者 Mino  投稿日 9/10(月) 16:52:10
皆さんはじめましてPerlの超初心者ですので
しょうもない質問のときは一言注意をお願いします(^^;;

HPでcontent="text/html; charset=x-sjis"と書く時
Perlではprint "Content-type: text/html\n\n";って
ところにどう追加すればいいのでしょうか?
回答者 呑兵衛  [削除]  投稿日 9/11(火) 00:20:34
呑兵衛@大阪です。

まずお答えから。

print "Content-type: text/html; charset=shift_jis\n\n";
[意味]
HTML文書で、文字コードはシフトJISです。改行を2つ出力しなさい。
この一行をHTMLヘッダーと言います。2つ改行をするのは、ヘッダーを終了させる意味です。
shift_jisは、特に大文字小文字にこだわらなくてもいいようです。
charset=shift_jis を宣言することで、Apache のあるバージョン以降で、
ある条件の下で発生する文字化けを防ぐことができます。

質問についてのささやかなコメント

> エンコードを日本語にするには?
1.日本語と言うエンコードはありません。日本語にする文字コードセットは
  shift_jis、jis、euc-jp、utfが使われ、あるコードを、指定するコードに変換することを
  エンコードと呼んでいます。
> HP
2.Compaqを合併した会社、と間違われます。少なくとも7ビットの国では。
  ホームページはホームページです。HPではありません。
  ここでおっしゃりたいことは HTML だと思いますが。
> x-sjis
3.これは、shift_jisと同義ですが、Netscape Ver 2.0 InternetExplorer Ver 2.0
  (いわゆるMOZAICのバージョンアップ)まで使われていたシフトJISコードの表記法です。
  まだそれらのバージョンが使えるので、shift_jis が通じないため、この表記が用いられて
  いるようですが、javascriptやCSSなど、Ver 2.0では再現できないHTMLも多くなっており、
  現在は x-sjis より shift_jis の表記法が圧倒的です。
質問者 Mino  [削除]  投稿日 9/12(水) 13:56:34
早速使ってみたところ、うまくいきました。
呑兵衛@大阪さんありがとうございます。

まったくとんでもない質問をしてしまったようで^^;;
いろいろと勉強になりました。

これからも変な質問等をしてしまう可能性が無いとはいえませんが
これからもよろしくお願いいたします。

このページは終了したので返信(回答)は書きこめません

Web裏技