10/06/15 18:38:48
指定の処理を行いログを出力するプログラム hoge.plと
そのログを読み込み解析し出力する analyst.plを作り、
普段はhoge.plを使いたまにanalyst.plを実行するという事をしてきました。
今回その解析済みログを利用するためにhoge.plの中でanalyst.plを実行させたくなったのですが
require('analyst.pl');としたところ"\x{00cd}" does not map to cp932 at analyst.pl line 12.
というエラーが大量に出ました。
これは両方のplファイルにuse utf8; binmode STDOUT ":encoding(cp932)";があり
analyst.plでutf8からcp932に変換されたものがhoge.plでさらにcp932に変換されているからのようで
analyst.pl内のbinmode~;をコメントアウトするとうまく動くようになりました。
しかしanalyst.plの単独実行時にうまく動かなくなりました。
このような場合どうすれば両立させることができるのでしょうか?お知恵を貸して欲しいです。
This is perl, v5.10.1 built for MSWin32-x64-multi-thread