use strict; require Encode::EUCJPSW; $|=1; while (<>) { my $file_name = $_; $file_name =~ tr/\x0d\x0a//d; warn $file_name . "...\n"; open my $file, '<', $file_name; local $/ = undef; my $c = <$file>; $c =~ s/[\x00-\x7f][\xa0-\xff][\x00-\x7f]//g; my $errr = 0; print "ERR: $file_name\n"; $file_name =~ s/([0-9A-Fa-f]{2})/pack 'C', hex $1/ge; print "($file_name)\n"; Encode::decode ('euc-jp-sw', $c, sub{ printf "# %02X\n", $_[0]; $errr=1; } ); }