亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Ruby程序中創建和解析XML文件的方法

2019-10-26 19:28:32
字體:
來源:轉載
供稿:網友

使用builder創建XML

builder安裝方法:

gem install builder
require 'builder'   x = Builder::XmlMarkup.new(:target => $stdout, :indent => 1) #":target =>$stdout"參數:指示輸出內容將被寫向標準輸出控制臺 #":indent =>1"參數:XML輸出形式將被縮進一個空格字符x.instruct! :xml,:version =>'1.1',:encoding => 'gb2312' x.comment! "書本信息"  x.library("shelf" => "Recent Acquisitions") { x.section("name" => "ruby"){ x.book("isbn" => "0672310001"){ x.title "Programming Ruby"  x.author "Yukihiro " x.description "Programming Ruby - The Pragmatic Programmer's Guide" } } } 

p x #打印XML

Ruby創建XML輸出結果:

< ?xml version="1.1" encoding="gb2312"?> < !-- 書本信息 --> < library shelf="Recent Acquisitions"> < section name="ruby"> < book isbn="0672310001"> < title>Programming Ruby< /title> < author>Yukihiro < /author> < description>Programming Ruby - The Pragmatic Programmer's Guide< /description> < /book> < /section> < /library> < inspect/> #< IO:0x2a06ae8> 

使用ReXML解析XML

REXML 是一個完全用ruby寫的processor ,他有多種api,其中兩個經典的api是通過DOM-like 和SAX-like 來進行區分的。第一種是將整個文件讀進內存,然后存儲為一個分層的形式(也就是一棵樹了).而第二種是"parse as you go",當你的文件很大,并且內存受到限制的時候,比較適合用這種。

看下面的book.xml:

引用

<library shelf="Recent Acquisitions">   <section name="Ruby">     <book isbn="0672328844">     <title>The Ruby Way</title>     <author>Hal Fulton</author>     <description>       Second edition. The book you are now reading.       Ain't recursion grand?     </description>     </book>   </section>   <section name="Space">     <book isbn="0684835509">       <title>The Case for Mars</title>       <author>Robert Zubrin</author>       <description>Pushing toward a second home for the human         race.       </description>     </book>     <book isbn="074325631X">       <title>First Man: The Life of Neil A. Armstrong</title>       <author>James R. Hansen</author>       <description>Definitive biography of the first man on         the moon.       </description>     </book>   </section> </library>


1 Tree Parsing(也就是DOM-like)

我們需要require rexml/document 庫,并且include REXML :

require 'rexml/document' include REXML  input = File.new("books.xml") doc = Document.new(input)  root = doc.root puts root.attributes["shelf"]   # Recent Acquisitions  doc.elements.each("library/section") { |e| puts e.attributes["name"] } # Output: #  Ruby #  Space  doc.elements.each("*/section/book") { |e| puts e.attributes["isbn"] } # Output: #  0672328844 #  0321445619 #  0684835509 #  074325631X  sec2 = root.elements[2] author = sec2.elements[1].elements["author"].text    # Robert Zubrin             
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美久久精品一级黑人c片| 日韩国产欧美精品在线| 精品久久久av| 国产精品电影久久久久电影网| 成人黄色生活片| 久久伊人精品天天| 欧美中文在线观看国产| 中文字幕亚洲精品| 国产亚洲一区精品| 欧美小视频在线观看| 国产日韩欧美在线看| 欧美激情精品久久久久久免费印度| 欧美综合国产精品久久丁香| 欧美体内谢she精2性欧美| 中文字幕av一区二区三区谷原希美| 欧美激情视频网址| 亚洲一二三在线| 日本高清视频一区| 国产亚洲精品久久久久动| 精品国产999| 蜜臀久久99精品久久久久久宅男| xxxx欧美18另类的高清| 国产日韩欧美电影在线观看| 欧美大片在线免费观看| 国产精品狼人色视频一区| 高清欧美一区二区三区| 91精品91久久久久久| 欧美一区二区大胆人体摄影专业网站| 欧美精品一区二区免费| 欧美在线激情网| 亚洲欧美福利视频| 日韩在线不卡视频| 欧美日韩在线免费| 国产精品久久77777| 亚洲综合日韩在线| 亚洲国产一区二区三区四区| 欧美日韩国产一区中文午夜| 亚洲图片欧美午夜| 国产丝袜一区视频在线观看| 欧美日韩国产va另类| 夜夜狂射影院欧美极品| 亚洲性夜色噜噜噜7777| **欧美日韩vr在线| 亚洲成人激情图| 亚洲最大激情中文字幕| 国产三级精品网站| 色综合亚洲精品激情狠狠| 亚洲国产欧美一区二区三区同亚洲| 国产亚洲一区二区在线| 日韩精品高清视频| 精品中文字幕在线2019| 亚州精品天堂中文字幕| 日韩高清人体午夜| 国产亚洲欧美日韩精品| 久久好看免费视频| 69久久夜色精品国产69乱青草| 午夜精品www| 欧美在线播放视频| 欧美日韩免费在线观看| 成人h片在线播放免费网站| 亚洲天堂日韩电影| 久久久久久久久久久亚洲| 欧美激情国产日韩精品一区18| 欧美在线视频网站| 久久精品国产91精品亚洲| 在线视频日韩精品| 欧美精品在线播放| 国产视频精品xxxx| 成人网在线观看| 亚洲一级免费视频| 久久国产精品久久精品| 亚洲石原莉奈一区二区在线观看| 日韩精品一二三四区| x99av成人免费| 国产成人一区二区三区| 亚洲欧洲日韩国产| 精品久久中文字幕久久av| 自拍偷拍亚洲区| 欧美日韩精品在线视频| 亚洲人午夜色婷婷| 国模精品视频一区二区| 国产日韩在线视频| 国产精品白嫩初高中害羞小美女| 国产91露脸中文字幕在线| 亚洲精品电影在线| 日本最新高清不卡中文字幕| 国产精品麻豆va在线播放| 国产精品一二三在线| 国产91精品久久久久久久| 国产一区二区三区欧美| 91sao在线观看国产| 欧美怡春院一区二区三区| 在线视频精品一| 国产精品高清免费在线观看| 欧美激情乱人伦| 日韩成人小视频| 91tv亚洲精品香蕉国产一区7ujn| 日韩在线中文视频| 欧美精品videosex性欧美| 欧美激情亚洲国产| 亚洲网站在线观看| 亚洲成人在线视频播放| 热99在线视频| 国产精品久久一区主播| 国产日韩在线看| 国产成人精品一区| 国产精品美女午夜av| 欧美三级xxx| 久久99久久99精品中文字幕| 秋霞午夜一区二区| 亚洲国产精品人人爽夜夜爽| 欧美成人免费播放| 国产一区二区三区在线观看视频| 亚洲视频电影图片偷拍一区| 日韩一区二区精品视频| 51精品国产黑色丝袜高跟鞋| 亚洲free性xxxx护士hd| 欧美成年人视频网站| 欧美高清在线视频观看不卡| 日韩精品免费在线观看| 一区二区在线免费视频| 色综合久久精品亚洲国产| 欧美国产精品日韩| 国产精品网红直播| 精品中文字幕在线2019| 亚洲精品720p| 中文字幕亚洲欧美在线| 国产精品午夜视频| 亚洲精品国产精品国产自| 国产精品∨欧美精品v日韩精品| 九九久久久久99精品| 91精品国产综合久久香蕉922| 久久久最新网址| 久久久在线视频| 一区二区三区视频在线| 国产精品久久久久久影视| 久久精品国产一区二区三区| 性亚洲最疯狂xxxx高清| 亚洲欧美日韩国产成人| 在线a欧美视频| 欧美精品第一页在线播放| 精品视频中文字幕| 性色av一区二区三区红粉影视| 日韩精品在线免费| 亚洲精品日韩欧美| 不卡av日日日| 国产精品久久77777| 亚洲国产高清福利视频| 日韩在线资源网| 欧美一级大片视频| 亚洲人成伊人成综合网久久久| 91久久精品国产91久久性色| 精品久久久久久久久国产字幕| 4438全国亚洲精品在线观看视频| 91九色视频导航| 欧美精品videosex牲欧美| 亚洲一区二区三区乱码aⅴ蜜桃女| 欧美在线一级va免费观看| 精品呦交小u女在线| 日韩亚洲精品视频| 欧美日本中文字幕| 久久久久久欧美| 亚洲国产美女精品久久久久∴| 日韩专区在线播放|