/
Forside
/
Teknologi
/
Udvikling
/
Perl
/
Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Find en bruger
Stil et spørgsmål
Skriv et tip
Fortæl en ven
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
Perl
#
Navn
Point
1
bjarneA
141
2
poul_from
50
3
soccer
30
4
Nicknack
14
5
Tmpj
0
XML::DOM::Parser æøå problem
Fra :
Kevin Steffer
Dato :
21-11-02 22:29
Hej NG,
Jeg har lavet et lille script som læser XML og laver HTML som
output. Men jeg kan ikke få parseren til at skrive æøå hvis jeg henter
data på flg. måde:
$species->getElementsByTagName('publisher')->item(0)
->getFirstChild->getNodeValue
Men hvis jeg bare får parseren til at udskrive det indlæste XML dokument:
print $doc->toString;
så virker det fint.
Nogen der ved om metoden:
$species->getElementsByTagName('publisher')->item(0)
->getFirstChild->getNodeValue
understøtter UNICODE eller hvordan jeg kan tjekke det?
Eksempel på script:
#!/usr/bin/perl -w
print "Content-type: text/html; charset=iso-8859-1;\n\n";
use POSIX qw(locale_h);
setlocale(LC_CTYPE, "da_DK.ISO8859-1");
use XML::Checker;
use XML::DOM;
my $file = 'news.xml';
my $parser = XML::DOM::Parser->new();
my $doc = $parser->parsefile($file);
print <<HTML;
<html>
<head>
<title>XML NEWS</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF">
<h2>XML NEWS</h2>
<table border="0" cellpadding="4" cellspacing="0">
HTML
foreach my $species ($doc->getElementsByTagName('news')){
print "<tr><td>Dato: ". $species->getElementsByTagName('date')->item(0) ->getFirstChild->getNodeValue ."</td></tr>";
print "<tr><td>Udgiver: " . $species->getElementsByTagName('publisher')->item(0) ->getFirstChild->getNodeValue ."</td></tr>";
}
print "</table><br><br>";
# Print to string
# print $doc->toString;
# Avoid memory leaks - cleanup circular references for garbage collection
#$doc->dispose;
print <<HTML;
</body>
</html>
HTML
XML fil:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE newsdoc [
<!ELEMENT newsdoc (news*)>
<!ELEMENT news (date,publisher)>
<!ELEMENT date (#PCDATA)>
<!ELEMENT publisher (#PCDATA)>
<!ENTITY oslash "ø">
<!ENTITY lt "<">
<!ENTITY gt ">">
]>
<newsdoc>
<news>
<date>16-11-2002</date>
<publisher>Jørgen Østergård</publisher>
</newsdoc>
Søg
Alle emner
Teknologi
Udvikling
Perl
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177579
Tips :
31968
Nyheder :
719565
Indlæg :
6409073
Brugere :
218888
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2024 kandu.dk. Alle rettigheder forbeholdes.