Thank you very much, Your Mother!
This works wonderfully, and it makes sense given the known cause of the encoding corruption.
use v5.16;
use utf8;
use open qw( :encoding(UTF-8) :std );
use Encode qw( encode decode );
while (my $damaged_text = <DATA>) {
chomp $damaged_text;
my $repaired_text = decode('UTF-8', encode('UCS-2LE', $damaged_text));
say $repaired_text;
}
close DATA;
exit 0;
__DATA__
敒›剕䕇呎
敌馀潧琠韦겜鯥↽
This prints…
Re: URGENT
Let’s go to 日本国!
…as expected.
In this case, use utf8 is required.
In reply to Re^2: How to Fix Character Encoding Damaged Text Using Perl?
by Jim
in thread How to Fix Character Encoding Damaged Text Using Perl?
by Jim
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |