Можно ли создавать файлы XML с помощью Hpricot? - PullRequest
1 голос
/ 06 октября 2009

Я знаю, что могу анализировать XML с помощью Hpricot, но возможно ли создавать файлы? Все учебники, которые я нашел, демонстрируют только разбор.

Ответы [ 2 ]

5 голосов
/ 06 октября 2009

Джим Вейриха Builder очень прост в использовании. Вот пример из Корпоративная интеграция с 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>
4 голосов
/ 06 октября 2009

Нах. Hpricot предназначен только для разбора XML. Не позволяет строить документы.

Но, возможно, вы захотите взглянуть на Nokogiri , который позволяет вам анализировать и создавать документы.

...