XML:Simple UTF8 rossz karakterek

XML:Simple UTF8 rossz karakterek
2009-08-09T23:14:54+02:00
2009-09-04T17:43:38+02:00
2022-07-31T20:50:31+02:00
aruzsi
Sziasztok!

Primitív program, XML:Simple és XMLin felhasználásával.

use strict;
use XML::Simple;


my $simple = XML::Simple->new( );
my $file = shift @ARGV;

my $tree = $simple->XMLin( $file ); # read document

# test access to the tree
print "Timetable version " . $tree->{ timetable }->{ version } . "\n";

foreach ( @{$tree->{ timetable }->{ operatingPeriods }->{ operatingPeriod }->{ service } } )
{
print "serviceID: " . $_->{serviceID} . " ";
print "startDate: " . $_->{startDate}." ";
print "endDate: " . $_->{endDate }." ";
print "\n";
...

Eredmény: (nem pont a kódrészletből, de csak print-tel van kíratva)
...
vonatszám: 40 vonatID: M▒V_40_Tatab▒nya-Tata V▒g▒nyz▒ri menetrend!

xml fájlban ott van, hogy utf8, Firefox hibátlanul mutatja ékezetesen a karaktereket, ha az xml-t nyitom meg.
Ubuntu 8.10, UTF8-as beállítással.

Mit kell tenni, hogy megfelelően jelenjen meg?

Köszönettel:
Mutasd a teljes hozzászólást!
Ezt találtam az O'Reilly: Perl & XML könyvben, ahonnan a kezelő rész is merítve lett:

"XML::Parser sometimes seems a little too eager to get you into Unicode. No matter
what a document's declared encoding is, it silently transforms all characters with
higher Unicode code points into UTF-8, and if you ask the parser for your data back, it
delivers those characters back to you in that manner. This silent transformation can be
an unpleasant surprise. If you use XML::Parser as the core of any processing
software you write, be aware that you may need to use the convertion tools mentioned
in this section to massage your data into a more suitable format."
Mutasd a teljes hozzászólást!

abcd