in reply to UTF-8 and XML::Parser
Hello.
You need "use utf8;" for literal strings to be treated as utf8 "character".
From perluniintro ...#!/usr/bin/perl use XML::Parser; use utf8; ###added $xml = "<word>Müller</word>"; $ch = sub { my ($p, $w) = @_; binmode STDOUT, ":encoding(UTF-8)"; ###added print "#$w#\n"; }; # the next commented 2 lines mean the same # and translate the output to iso-8859-1 # $p = XML::Parser->new(); $p = XML::Parser->new(ProtocolEncoding => 'UTF-8'); # this line do the right job, but why?? #$p = XML::Parser->new(ProtocolEncoding => 'ISO-8859-1'); $p->setHandlers('Char' => $ch); $p->parse($xml);
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: UTF-8 and XML::Parser
by Anonymous Monk on Oct 14, 2012 at 03:56 UTC | |
by remiah (Hermit) on Oct 14, 2012 at 04:26 UTC | |
by Anonymous Monk on Oct 14, 2012 at 05:49 UTC | |
by remiah (Hermit) on Oct 14, 2012 at 06:33 UTC | |
|
Re^2: UTF-8 and XML::Parser
by Anonymous Monk on Oct 14, 2012 at 02:51 UTC | |
by choroba (Cardinal) on Oct 14, 2012 at 07:37 UTC |