Perlについての質問箱 ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
340:デフォルトの名無しさん 07/04/23 00:49:03 #!/usr/bin/perl my $str = '%E8%B3%AA%E5%95%8F'; (my $dec = $str) =~ s/%([a-f\d]{2})/pack 'H2', $1/egi; print "Content-Type: text/plainl; charset=utf-8\n\n"; print $dec; __END__ とりあえず手元だとこれで動いてる。まずは問題の発生する最小限のコードまで切り詰めてみ? 341:337 07/04/23 01:17:20 ありがとうございました!解決しました。 use open ":std";が余計でした(よく分からないのに「おまじない」で書くのは駄目でしたね)。 問題のスクリプトから上記を除いて、かつ、 自分で作って読んでいるモジュールからも上記を除きました。 本当にありがとうございます! 342:デフォルトの名無しさん 07/04/23 01:18:56 自分(↑)は>>337さんでなくって>>335でした。お目汚しでごめんなさい。 標準入出力を使わないなら、use open ":std";等は確かに不要でした。 343:335 07/04/23 03:15:36 事後報告がてら・・・ use open ":std";を外せばアンエスケープで文字化けしないものの、 今度は後続処理でUTF-8な文字を処理できないという問題がありました。 結局、以下のサイトを参照して、 ttp://naoya.dyndns.org/~naoya/mt/archives/000611.html use open ":std";は残したままで、アンエスケープ処理の後に utf8::decode($str);でUTF8フラグを落とせば、 スクリプトへのUTF-8文字列の受け渡しも、後続処理も、うまく行きました。 夜更けにお答えくださって、本当にどうもありがとうございました。 これで安心して眠れそうです。
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
5380日前に更新/220 KB
担当:undef