Chyba 'Wide character in print' pri pouziti XML::Parser

Pavel Smerk xsmerk na informatics.muni.cz
Čtvrtek Červen 12 13:11:34 MEST 2003


	Ahoj vespolek.

Deje se mi nasledujici:

[...]$ cat z.xml
<test>ћ</test>
[...]$ cat z.pl
#!/usr/bin/perl -w

use strict;
use XML::Parser;

my $parser = new XML::Parser(Handlers => {Char => sub { print "$_[1]\n" }});
$parser->parse(*STDIN, ProtocolEncoding => 'UTF-8');
[...]$ ./z.pl < z.xml
Wide character in print at ./z.pl line 6.
ћ
[...]$ perl -pe 's/<[^>]*>//g;' < z.xml
ћ
[...]$

Pokud by se to nahodou nepreneslo korektne, v tom XML je dvojice znaku
\xd1\x9b cili v utf8 jakysi paznak z cyrilice s cislem 045b, ovsem o
konkretni znak nejde.

Neni mi jasne, proc se mi vypisuje pri pouziti XML::Parseru chybova hlaska,
co delam spatne a jak to spravit.

Diky za pripadne rady.

P.


Další informace o konferenci Perl