Hi Nick,

thank you so much for solving that problem! I didn't know that
"Unicode" is a valid canonical name of an available encoding, since

use Encode;
my @all_encodings = Encode->encodings(":all");
print join("\n", @all_encodings);

does not include it on my machine.

best,
rob

--
On Thu, 19 Sep 2002, 13:35 GMT+01 (14:35 local time) Nick Ing-Simmons
wrote:

> Robert Allerstorfer <[EMAIL PROTECTED]> writes:
>>Hello,
>>
>>I want to convert source code written in the Japanese shift_jis
>>character set, into their Unicode numbers. For instance, "ŒŸ" should
>>result in "U+691C" (which is 26908 in decimal). I tried using the
>>Encode module of Perl 5.8 with something like this:
>>
>>        use Encode::JP;
>>        my $string = "ŒŸ";
>>        Encode::from_to($string, "shiftjis", "utf8");
>>        my $ord = join("\n", unpack('U*', $string));
>>        print "$string\n$ord";

> from_to does what it says. In that case you took shiftjis decoded
> it to Unicode then re-encoded as UTF-8 octets.

> What you might have meant was to get Unicode rather than the re-encoded form: 

>         use Encode::JP;
>         my $string = "ŒŸ";
>         Encode::from_to($string, "shiftjis", "Unicode");
>         binmode STDOUT,':utf8';
>         print length($string)," chars '$string'\n";
>         my $ord = join("\n", map( ord($_),split(//,$string)));
>         print "$ord";

Reply via email to