use Encode; use Encode::Byte; open (IN, "<:encoding($enc)", $infile) #assume $enc = utf8 open (OUT, ">:encoding($dest_enc)", $target) #assume $dest_enc = cp1258) while (my $conv = ) { print OUT $conv; }