print命令で強制的にEUCで出力させるには?

[上に] [前に] [次に]
おはぎ [E-Mail] [HomePage] 1998/04/11(土) 18:26:25
perlでprintの命令を使ったら普通、EUCコードでブラウザに渡されますよね。
今掲示板を自作で作ってるんですが、何故かprintをしたらシフトJISで出力されるんですよ。
掲示板のデータもEUCで出力してあったので、HTMLの中はシフトJISとEUCが混ざってぐちゃぐちゃ・・
どうやったらprint命令で文字コードを強制的にEUCにできますか?

とほほ 1998/04/11(土) 21:19:58
printは通常EUCという訳ではなく、プログラム自体をEUCで書けば
EUC、シフトJISで書けばシフトJISで書き出します。強制的にEUCに
変換するには、「とほほの厳選ツール集」の「perl編」で紹介して
いる、jcode.plというライブラリを入手して、
 $xx = "あいうえお";
 require "jcode.pl";
 &jcode'convert(*xx, "euc");
 print $xx;
としてみてください。

おはぎ 1998/04/11(土) 22:46:14
[[解決]]
ありがとうございました!
実を言うとチェックしてみたら、SJISの文字コードで保存してあった・・・^^;
うーん、僕ってバカ^^;

B-Cus 1998/04/13(月) 02:12:07
CGIの先頭で
open(STDOUT,"| /usr/local/bin/nkf -e");
などとやっておくのも結構楽です。複数の文字コードが
混在していても、全てEUCにしてくれますから。

[上に] [前に] [次に]