perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 24
Click for quality!




11.02.2012 / 22:46

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragXML::Parser, Style Tree bzw. Objects
Seitenanfang
Hi,
ich möchte eine XML-Datei mit dem Parser auslesen und dabei am liebsten den Objects-Style oder aber auch den Tree-Style verwenden. Alle Beispiele, die ich dazu gefunden habe, sehen folgendermaßen aus:

# initialize parser and read the file
use XML::Parser;
$parser = new XML::Parser( Style => 'Tree' );
my $tree = $parser->parsefile( shift @ARGV );

# dump the structure
use Data::Dumper;
print Dumper( $tree );

When run on the file in Example 6-4, it gives this output:

$tree = [
'preferences', [
{}, 0, '\n',
'font', [
{ 'role' => 'console' }, 0, '\n',
'size', [ {}, 0, '9' ], 0, '\n',
'fname', [ {}, 0, 'Courier' ], 0, '\n'
], 0, '\n',
'font', [
{ 'role' => 'default' }, 0, '\n',
'fname', [ {}, 0, 'Times New Roman' ], 0, '\n',
'size', [ {}, 0, '14' ], 0, '\n'
], 0, '\n',
'font', [
{ 'role' => 'titles' }, 0, '\n',
'size', [ {}, 0, '10' ], 0, '\n',
'fname', [ {}, 0, 'Helvetica' ], 0, '\n',
], 0, '\n',
]
];

Leider weiß ich nicht, wie ich jetzt auf die eizelnen Elemente zugreifen kann. Da wird immer nur die gesamte Struktur ausgegeben, aber das hilft mir überhaupt nicht weiter.

Ich hoffe, Ihr könnt mir helfen.

Gruß
Johannes

Datum: 13.12.2005-11:02

Beitragre: XML::Parser, Style Tree bzw. Objects
Seitenanfang
hallo,

schau mal, ob es in dem Modul nicht auch Funktionen zum Auslesen gibt - du musst Dich bei einem Baum ja durchhängeln, bis du das gesuchte Element gefunden hast ( Parent - Child )...

Eine andere Alternative bietet das Modul XML::Simple, das parst in eine Hash-Array-Struktur, mit der Du direkten Zugriff auf alle Elemente hast. Einziger Nachteil : Die Reihenfolge geht verloren.

Gruß Ralf

Datum: 15.12.2005-11:09

Beitragre: XML::Parser, Style Tree bzw. Objects
Seitenanfang
Hi,
ich habs schon hinbekommen. Das Problem ist, dass auf meinem Server (Netbeat) kaum Module für die Geschichte vorhanden sind. Aber ich werde den Kram dann selbst in Hashs packen, damit man anständig drauf zugreifen kann.

Gruß
Johannes

Datum: 15.12.2005-17:01

-






-
-