Perl XML::Simple 的应用(二)

前端之家收集整理的这篇文章主要介绍了Perl XML::Simple 的应用(二)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

使用XML建立图书信息管理表books.xml

tiger506@darkstar:~/Program/Perl$ cat ./books.xml
<bookstore>
       <book>
               <category>COOKING</category>
               <lang>en</lang>
               <title>Everyday Italian</title>
               <author>Giada De Laurentiis</author>
               <year>2005</year>
               <price>30.00</price>
       </book>
       <book>
               <category>CHILDREN</category>
               <lang>en</lang>
               <title>Harry Potter</title>
               <author>J K. Rowling</author>
               <year>2005</year>
               <price>29.99</price>
       </book>
       <book>
               <category>WEB</category>
               <lang>en</lang>
               <title>Learning XML</title>
               <author>Erik T. Ray</author>
               <year>2003</year>
               <price>39.95</price>
       </book>
</bookstore>


使用PERL语言编程,使图书信息格式化输出:

tiger506@darkstar:~/Program/Perl$ cat ./pbooks.pl
#!/usr/bin/perl
use XML::Simple;
use Data::Dumper;
my $xml_book="/home/tiger506/Program/Perl//books.xml";
my $book_info=XMLin($xml_book);
print Dumper($book_info); #查看翻译过来的图书数据结构
for($i=0;$i<3;$i++){
       print "------------------------------------------------\n";
       print "TITLE: ".$book_info->{book}->[$i]->{title}."\n";
       print "LANG: ".$book_info->{book}->[$i]->{lang}."\n";
       print "AUTHOR ".$book_info->{book}->[$i]->{author}."\n";
       print "CATEGORY ".$book_info->{book}->[$i]->{category}."\n";
       print "PRICE ".$book_info->{book}->[$i]->{price}."\n";
       print "YEAR ".$book_info->{book}->[$i]->{year}."\n";
       print "------------------------------------------------\n";
}


结果演示:

tiger506@darkstar:~/Program/Perl$ ./pbooks.pl$VAR1 = {          'book' => [                    {                      'lang' => 'en',                     'price' => '30.00',                     'author' => 'Giada De Laurentiis',                     'title' => 'Everyday Italian',                     'category' => 'COOKING',                     'year' => '2005'                    },                   {                      'lang' => 'en',                     'price' => '29.99',                     'author' => 'J K. Rowling',                     'title' => 'Harry Potter',                     'category' => 'CHILDREN',                     'price' => '39.95',                     'author' => 'Erik T. Ray',                     'title' => 'Learning XML',                     'category' => 'WEB',                     'year' => '2003'                    }                  ]        };------------------------------------------------TITLE: Everyday ItalianLANG: enAUTHOR Giada De LaurentiisCATEGORY COOKINGPRICE 30.00YEAR 2005------------------------------------------------------------------------------------------------TITLE: Harry PotterLANG: enAUTHOR J K. RowlingCATEGORY CHILDRENPRICE 29.99YEAR 2005------------------------------------------------------------------------------------------------TITLE: Learning XMLLANG: enAUTHOR Erik T. RayCATEGORY WEBPRICE 39.95YEAR 2003------------------------------------------------

猜你在找的Perl相关文章