>>724
元の質問はコレね?
http://pc8.2ch.net/test/read.cgi/tech/1123220967/921

とりあえずロジックを考える時は、やらなきゃいけない事を分けよう。

1. 16進数文字列 → 通常の文字列
2. EUC-JP → Shift_JIS 変換

use Encode qw/from_to/;

# '0xa4a2' → EUC-JP の「あ」
my $str = '0xa4a2';
$str =~ s/^0x//i;
my $euc_a = pack('H*', $str);

# EUC-JP の「あ」 → Shift_JIS の「あ」
from_to(my $sjis_a = $euc_a, 'EUC-JP', 'Shift_JIS');

print $sjis_a;

これでいいかね。