XML::Simple XMLin() wandelt alles in utf8

Hallo,

ich verwende XMLin() um ISO-8159-1 Dateien zu parsen.

Funktioniert soweit ganz gut, nur mit den Nachteil, dass in dem zurück
gegebenen Objekt alles UTF-8 codiert scheint.

Wie sorge ich dafür, dass XMLin die Daten nicht in UTF-8 codiert
sondern in ISO-8159-1 beläst.

Oder gibt es eine einfach Möglichkeit, alles Daten im zurückgegebenen
Objekt von XMLin wieder zurück zu codieren?

Vielen Dank & viele Grüße

Matthias Jaekle
Matthias Jaekle [ Mi, 12 Juli 2006 19:44 ] [ ID #1389426 ]

Re: XML::Simple XMLin() wandelt alles in utf8

foo.bar [at] jaekle.net wrote:
> Hallo,
>
> ich verwende XMLin() um ISO-8159-1 Dateien zu parsen.
>
> Funktioniert soweit ganz gut, nur mit den Nachteil, dass in dem zurück
> gegebenen Objekt alles UTF-8 codiert scheint.
>
> Wie sorge ich dafür, dass XMLin die Daten nicht in UTF-8 codiert
> sondern in ISO-8159-1 beläst.
>
> Oder gibt es eine einfach Möglichkeit, alles Daten im zurückgegebenen
> Objekt von XMLin wieder zurück zu codieren?
>
> Vielen Dank & viele Grüße
>
> Matthias Jaekle
>

Ich verwende auch XMLin(), allerdings sind meine XMLs UTF8-Kodiert.
Ich packe die dann so aus:


----------------------------------------------
use Unicode::MapUTF8 qw(from_utf8);
[...]
my $ref = eval{ XMLin($xmlstring) };
[...]
my $string1 = &deutf8($ref->{"<tagname1>"}) ;
my $string2 = &deutf8($ref->{"<tagname2>"}) ;
[...]


############################################################ #################
sub deutf8{
############################################################ #################
my $value=shift;
return unless $value;
return from_utf8({ -string=>$value, -charset => 'ISO-8859-1' ,
DEBUG=>1});
}
Jens Puruckherr [ Do, 13 Juli 2006 10:34 ] [ ID #1390804 ]

Re: XML::Simple XMLin() wandelt alles in utf8

Jens Puruckherr <jenspuru [at] web.de> writes:

> foo.bar [at] jaekle.net wrote:
> > Hallo,
> >
> > ich verwende XMLin() um ISO-8159-1 Dateien zu parsen.
> >
> > Funktioniert soweit ganz gut, nur mit den Nachteil, dass in dem zurück
> > gegebenen Objekt alles UTF-8 codiert scheint.
> >
> > Wie sorge ich dafür, dass XMLin die Daten nicht in UTF-8 codiert
> > sondern in ISO-8159-1 beläst.
> >
> > Oder gibt es eine einfach Möglichkeit, alles Daten im zurückgegebenen
> > Objekt von XMLin wieder zurück zu codieren?
> >
> > Vielen Dank & viele Grüße
> >
> > Matthias Jaekle
> >
>
> Ich verwende auch XMLin(), allerdings sind meine XMLs UTF8-Kodiert.
> Ich packe die dann so aus:
>
>
> ----------------------------------------------
> use Unicode::MapUTF8 qw(from_utf8);

Warum benutzt du nicht das Standard-Modul Encode?

Gruß,
Slaven

--
Slaven Rezic - slaven <at> rezic <dot> de

need xpm or ppm output from GD?
http://search.cpan.org/search?mode=module&query=GD::Convert
Slaven Rezic [ Di, 25 Juli 2006 08:23 ] [ ID #1404746 ]

Re: XML::Simple XMLin() wandelt alles in utf8

Slaven Rezic wrote:

>> use Unicode::MapUTF8 qw(from_utf8);
>
> Warum benutzt du nicht das Standard-Modul Encode?

weil ich das nicht kenne ;-)

Jens
Jens Puruckherr [ Di, 01 August 2006 10:16 ] [ ID #1413635 ]
Perl » de.comp.lang.perl.misc » XML::Simple XMLin() wandelt alles in utf8

Vorheriges Thema: Fork / Non Blocking HTTP Daemon
Nächstes Thema: Problem mit Regulären Ausdrücken