在 libxml-ruby API 文档 ( http://libxml.rubyforge.org/rdoc/index.html ) 中,在 LibXML::XML::Document 下,我尝试了以下操作:
filename = 'something.xml'
stats_doc = XML::Document.new()
stats_doc.root = XML::Node.new('root_node')
stats_doc.root << XML::Node.new('elem1')
stats_doc.save(filename, :indent => true, :encoding => 'utf-8')
...导致此错误:
parse_stats.rb:26:in `save': can't convert String into Integer (TypeError)
(上面 block 中的最后一行是第 26 行)。
我尝试将文件名更改为整数,结果如下:
parse_stats.rb:26:in `save': wrong argument type Fixnum (expected String) (TypeError)
所以我了解到我需要使用字符串,但字符串似乎不起作用。因为我似乎无法在 Google 上找到任何 libxml-ruby 的例子,所以我很茫然。非常感谢任何帮助,或链接到任何在线示例,我可以在其中看到 libxml-ruby 如何用于创建 XML 文档。
libxml-ruby 1.1.3 ruby 1.3.1 ruby 1.8.7
最佳答案
看来问题出在编码上。尝试 XML::Encoding::UTF_8而不是“utf-8”。
关于Ruby:无法使用 Libxml-ruby 保存文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/705862/