1
이 스크립트는 두 번 동일한 출력을 내게 제공합니다. utf8
encode
및 decode
사이에 두 개의 say
사이에 생존 할 수없는 인코딩이 있습니까?어떤 경우에 utf8 croak를 인 코드/디코드합니까?
#!/usr/bin/env perl
use warnings;
use 5.16.1;
use Encode qw/encode decode/;
my $my_encoding = 'ISO-8859-7';
binmode STDOUT, ":encoding($my_encoding)";
my $var = "\N{GREEK SMALL LETTER TAU}";
$var .= "\N{GREEK SMALL LETTER OMEGA WITH TONOS}";
$var .= "\N{GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA}";
$var = encode('utf8', $var);
$var = decode($my_encoding, $var);
say $var;
my $test = encode('utf8', $var, Encode::FB_CROAK);
$var = decode('utf8', $test, Encode::FB_CROAK );
say $var;
'utf-8'이라고 쓰면 다른 인코딩에 대한 대답은 어떨까요? –
나는 그 질문을 이해하지 못한다. – ikegami
인코딩이 작동하는 경우 항상 동일한 인코딩으로 인코딩 및 디코딩해야합니다. 당신이 처음 시작한 것을 정확히 얻을 수는 없지만, 당신이 언제 그랬는지 모르겠습니다. – ikegami