[GastForen Archiv Perl und CGI Xml::DOM

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Archiv - Archivierte Foren
Themen
Beiträge
Moderatoren
Letzter Beitrag

Xml::DOM

hoernchen
Beiträge gesamt: 28

10. Nov 2004, 13:55
Beitrag # 1 von 2
Bewertung:
(837 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo!
Ich habe ein Problem damit eine XMLdatei mit Hilfe von dem Modul XML DOM auszugeben! ich moechte dass der Text zwuschen 2 Tags ausgegeben wird.
der quellcode sieht so aus:use XML::Parser;
use XML::DOM;

my $parser = new XML::DOM::Parser;
my $doc = $parser->parsefile ("dtdncbi.xml");
my $root = $doc->getDocumentElement();
print "\nThe root element is ", $root->getNodeName(), ".\n";
my @children = $root->getChildNodes();
print "There are ", scalar(@children), " child elements.\n";
my $child =$root->getChildNodes();

foreach my $child ($root->getChildNodes()) {
if ($child->getNodeType == TEXT_NODE){
print "Text: ", $child->getData($child);
} elsif ($child->getNodeType == ELEMENT_NODE)
{
foreach my $resultitems ($child->getChildNodes())
{
if ($resultitems->getNodeType == TEXT_NODE)
{
print "Text: ", $resultitems->getData();
}
elsif ($resultitems->getNodeType== ELEMENT_NODE)
{
foreach my $item ($resultitems->getChildNodes())
{
if ($item->getNodeType == TEXT_NODE)
{ print $item->getData();}
}}}}
und das xml

<Result>
<egQuery>
<ResultItem>
<DbName>china</DbName>
<MenuName>hallo</MenuName>
<Count>27832</Count>
<Status>Ok</Status>
</ResultItem>

</egQuery>
mein ziel waere: dbname china
MenuName hallo Count27832 StatusOk
ich hoffe jemand kann mir weiter helfen!? LG hoernchen
X

Xml::DOM

SabineP
Beiträge gesamt: 7586

10. Nov 2004, 16:47
Beitrag # 2 von 2
Beitrag ID: #123236
Bewertung:
(837 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hoernchen,

die XML-Datei:

<Result>
<egQuery>
<ResultItem>
<DbName>china</DbName>
<MenuName>hallo</MenuName>
<Count>27832</Count>
<Status>Ok</Status>
</ResultItem>
</egQuery>
</Result>



das Perl-Script:

#!/usr/bin/perl
use strict;
use XML::DOM;

my $parser = new XML::DOM::Parser;
my $doc = $parser->parsefile ("dtdncbi.xml");
my $nodelist = $doc->getElementsByTagName('ResultItem');

my $n = $nodelist->getLength;
for (my $i = 0; $i < $n; $i++) {
my $elem = $nodelist->item($i);
print 'DbName:',$elem->getElementsByTagName('DbName')->item(0)->getFirstChild()->getData(),"\n";
print 'MenuName:',$elem->getElementsByTagName('MenuName')->item(0)->getFirstChild()->getData(),"\n";
print 'Count:',$elem->getElementsByTagName('Count')->item(0)->getFirstChild()->getData(),"\n";
print 'Status:',$elem->getElementsByTagName('Status')->item(0)->getFirstChild()->getData(),"\n";

}

$doc->dispose; # Avoid memory leaks - cleanup circular references for garbage collection !


Gruß Sabine


als Antwort auf: [#123118]
(Dieser Beitrag wurde von SabineP am 10. Nov 2004, 16:50 geändert)

Aktuell

Web / SEO / Blockchain / Betriebssystem
unsplash_300

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
01.12.2022

Online
Donnerstag, 01. Dez. 2022, 10.00 - 10.45 Uhr

Webinar

Die drei ColorLogic-Programme ZePrA, CoPrA und ColorAnt sind in neuen Versionen mit vielen neuen Funktionen im Jahr 2022 veröffentlich worden oder werden in Kürze veröffentlicht (ColorAnt 9). In unserem ca. 45 minütigen kostenlosen Webinar zeigen wir Ihnen einige dieser neuen Funktionen mit dem Schwerpunkt auf Automatisierung und Produktivitätssteigerungen.

Ja

Organisator: Impressed GmbH

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=311

ColorLogic Update-Webinar ZePrA 10, CoPrA 9 und ColorAnt 9
Veranstaltungen
02.02.2023

Prozesse optimieren und effizient gestalten

Zürich
Donnerstag, 02. Feb. 2023, 08.00 - 10.00 Uhr

Digitalisierung, Webauftritt

Digitalisierung mitgestalten - Worauf kommt es an? Wie wichtig ist die Webseite? Webseite mit Word Press? Interne Prozesse optimieren

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: Birol Isik, E-Mailinfo AT bkcc DOT ch

https://digitalisierung-heute.ch/digitalisierung-informationstag-schweiz/