私は完全にRubyが初めてです。必要なのは、単純なXMLファイルを作成することだけです。
<?xml version="1.0" encoding="ASCII"?>
<product>
<name>Test</name>
</product>
それでおしまい。
Builderが最初の停止点になるはずです。
require 'builder'
def product_xml
xml = Builder::XmlMarkup.new( :indent => 2 )
xml.instruct! :xml, :encoding => "ASCII"
xml.product do |p|
p.name "Test"
end
end
puts product_xml
これを生成します:
<?xml version="1.0" encoding="ASCII"?>
<product>
<name>Test</name>
</product>
それは私には正しいように見えます。
一部のビルダー参照:
require 'nokogiri'
builder = Nokogiri::XML::Builder.new(:encoding => 'UTF-8') do |xml|
xml.root {
xml.products {
xml.widget {
xml.id_ "10"
xml.name "Awesome widget"
}
}
}
end
puts builder.to_xml
出力されます:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<products>
<widget>
<id>10</id>
<name>Awesome widget</name>
</widget>
</products>
</root>
builder を使用してxmlを生成できます。
RubyでXMLを構築するためのオプションがいくつかあります
[〜#〜] rexml [〜#〜] -組み込みですが、特に大きなドキュメントを処理する場合は非常に遅くなります
ノコギリ -より新しく、より速く、rubymemとしてインストール
LibXML-Ruby -C libxmlライブラリ上に構築され、rubygemとしてもインストールされます
Rubygemsをインストールできない場合は、REXMLが最適なオプションです。大規模で複雑なXMLドキュメントを作成する場合は、NokogiriまたはLibXML-Rubyを使用します。