是否可以使用Hpricot创建XML文件?

时间:2009-10-06 11:45:15

标签: xml ruby hpricot

我知道我可以使用Hpricot解析XML,但是也可以创建文件吗?我发现的所有教程只展示了解析。

2 个答案:

答案 0 :(得分:5)

Jim Weirich的Builder非常容易使用。以下是Maik Schmidt的Enterprise Integration with Ruby示例:

xml = '' 
doc = Builder::XmlMarkup.new(:target => xml, :indent => 2) 
doc.instruct!

doc.person(:name => 'Max', :surname => 'Mustermann') { |person| 
  person.address { |address| 
    address.street('Hauptstr. 42') 
    address.tag!('postal-code', '12345') 
    address.city('Musterstadt') 
  } 
  person.position(:longitude => 12.345, :latitude => 56.789) 
}

产生:

<?xml version="1.0" encoding="UTF-8"?>
<person surname="Mustermann" name="Max">
  <address>
    <street>Hauptstr. 42</street>
    <postal-code>12345</postal-code>
    <city>Musterstadt</city>
  </address>
  <position longitude="12.345" latitude="56.789"/>
</person>

答案 1 :(得分:4)

罗。 Hpricot仅用于解析XML。它不允许构建文档。

但您可能需要查看Nokogiri,它允许您解析和构建文档。