I am completely new to Ruby. All I want is to produce a simple XML file.
<?xml version="1.0" encoding="ASCII"?>
<product>
<name>Test</name>
</product>
That's it.
I am completely new to Ruby. All I want is to produce a simple XML file.
<?xml version="1.0" encoding="ASCII"?>
<product>
<name>Test</name>
</product>
That's it.
Here are a couple more options for constructing XML in Ruby
REXML - built-in but is very slow especially when dealing with large documents
Nokogiri - newer and faster, installs as a rubygem
LibXML-Ruby - built on the C libxml library, also installs as a rubygem
If you can't install rubygems then REXML is your best options. If you are going to be creating large complex XML docs then Nokogiri or LibXML-Ruby is what you would want to use.
Builder should probably be your first stopping point - it's very simple:
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
produces this:
<?xml version="1.0" encoding="ASCII"?>
<product>
<name>Test</name>
</product>
which looks about right to me.
Some Builder references: