perlで扱う言語のデフォルトをUTF-8→EUC-JPに変更したいのですが、どこで設定可能でしょうか?

RHES4.0、perl5.8.5です。

回答の条件
  • URL必須
  • 1人1回まで
  • 登録:2006/08/28 19:34:00
  • 終了:2006/08/29 11:38:43

回答(4件)

id:kurukuru-neko No.1

kurukuru-neko回答回数1844ベストアンサー獲得回数1552006/08/28 20:17:41

ポイント25pt

/etc/php.iniの

mbstring.internal_encoding を

mbstring.internal_encoding = UTF-8

に変更

mbstring.http_input

mbstring.http_output

mbstring.detect_order

は環境に合わせる。

現在は、例2の値と思われます。

http://www.php.net/manual/ja/ref.mbstring.php#ini.mbstring.h...


Red Hat Enterprise Linux ES 4 リリースノート

http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/...

id:b-wind No.2

b-wind回答回数3344ベストアンサー獲得回数4402006/08/28 20:23:21

ポイント30pt

http://www.pure.ne.jp/~learner/program/Perl_unicode.html

Perl はデフォルトでは文字列を特に意識していません。

utf8/encoding プラグマを使ったときのみUTF-8フラグが立ち、UTF-8として扱われます。

ということで本来は何もしなくていいはずなのですが、いくつかのモジュールでは内部でプラグマを使用しているので意図しないところでフラグが立っている場合があります。

このばあい、Encode モジュールで任意の文字コードに変換する等の対処が必要になってきます。

http://search.cpan.org/dist/Encode/

id:aiaina No.3

aiaina回答回数8179ベストアンサー獲得回数1312006/08/28 21:25:43

ポイント5pt

http://oshiete1.goo.ne.jp/kotaeru.php3?q=2079198

こちら参考になりそうです

id:k12u No.4

k12u回答回数80ベストアンサー獲得回数72006/08/29 03:06:41

ポイント30pt

基本的には特に何の設定も必要ありません。

5.8系のPerlはEUC-JPもUTF-8も基本的に問題なく扱えます。

変換等の制御が必要でしたらEncodeモジュールやPerlIOの機能を使うのがいいでしょう。何をどのように使うかは問題設定によって異なってくるかと思います。

http://www.hikoboshi.org/perl/doc/encode.html

文字列の内部表現はUTF-8ですがこれを変更する方法は無いものと認識しています。

id:P-mako

みなさんご回答ありがとうございました。

私の質問の仕方(勝手な見通し)がかなり悪かったようですので、具体的な質問を別途オープンします。

2006/08/29 11:37:48

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません