Hi,
ich habe ein kleines encoding problem mit dem XML::RSS Module. Ich versuche einen RSS feed mit Japanischen Zeichen zu erstellen. In dem Script kann ich die Japanischen Zeichen normal benutzen, aber sobald ich diese an XML:RSS uebergebe, dann kommt nur noch was komisches bei herraus:
beispiel script:
Code:
#!/usr/bin/perl
use utf8;
use XML::RSS;
use Encode qw/encode decode/;
my $name="メール";
my $title="どこでも";
print "$name ----- $title\n";
my $rss = XML::RSS->new(version=>'2.0');
$rss->channel(
title => "$name",
link => "http://link.com",
language => "ja",
description => "$name",
pubDate => 'Thu, 23 Aug 1999 07:00:00 GMT',
lastBuildDate => 'Thu, 23 Aug 1999 16:20:26 GMT',
);
my $check = utf8::valid($name);
print "is utf valild?: $check\n";
$rss->add_item(title => "$name",
link => "http://link.com",
mode => 'insert'
);
print $rss->as_string;
$rss->save("test.xml");
und das Ergebniss:
Code:
メール ----- どこでも
is utf valild?: 1
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
xmlns:blogChannel="http://backend.userland.com/blogChannelModule"
>
<channel>
<title>メール</title>
<link>http://link.com</link>
<description>メール</description>
<language>ja</language>
<pubDate>Thu, 23 Aug 1999 07:00:00 GMT</pubDate>
<lastBuildDate>Thu, 23 Aug 1999 16:20:26 GMT</lastBuildDate>
<item>
<title>メール</title>
<link>http://link.com</link>
</item>
</channel>
</rss>
Weiss einer was XML:RSS falsch macht oder warum der das umkodiert?
Danke! && MfG bert2002
Lesezeichen