Jcode.pmで、h2zというメソッドがあり、これを使うと、半角カナを全角カナにできるってことだったので、下記のように実装(ファイルはUTF8で保存)
use Jcode; use utf8; my $str = 'アイウエオ'; my $obj = Jcode->new($str,'utf8'); #半角カナを全角カナに変換 $str = $obj->h2z->utf8; print $str;
こうすると、半角カナは全角カナになったんだけど、いくつかの漢字が文字化け。
調べてみると、Jcodeは内部で一度eucにして変換かけてるらしいので、UTF8のみ対応する漢字が含まれていると文字化けする。
ここhttp://d.hatena.ne.jp/dayflower/20060530/1148951624を参考に、Unicode::Japanese使って対策。下記のように実装したら問題なし!
use Unicode::Japanese; use utf8; my $str = 'アイウエオ'; $str = Unicode::Japanese->new($str,'utf8')->h2zKana->get; print $str;