Perl 之 Stream XML::Parser

2015-12-14 0 118
Perl 之 Stream XML::Parser
use XML::Parser;

my $parser = XML::Parser->new( Handlers => {Start=>\&handle_start,End=>\&handle_end,});
$parser->parsefile( "yourXML.xml" );

my @element_stack;          # remember which elements are open

sub handle_start {
    my( $expat, $element, %attrs ) = @_;

    my $line = $expat->current_line;

    print "$element starting on # $line!\n";

    push( @element_stack, { element=>$element, line=>$line });

    if( %attrs ) {
        print "Attributes:\n";
        while( my( $key, $value ) = each( %attrs )) {
            print "\t$key => $value\n";
         }
    }
}

sub handle_end {
    my( $expat, $element ) = @_;

    my $element_record = pop( @element_stack );
    print "$element started on # ", $$element_record{ line };
}

遇见资源网 perl Perl 之 Stream XML::Parser http://www.ox520.com/13227.html

上一篇:

已经没有上一篇了!

下一篇:

已经没有下一篇了!

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务