Bla*_*man 5 ruby xml ruby-on-rails rexml
我有一个非常简单的xml文件,我试图访问:
<article>
<text>hello world</text>
</article>
Run Code Online (Sandbox Code Playgroud)
我到目前为止这样做:
file = File.open("#{Rails.root}/public/files/#{file_id}.xml", "r")
xml = file.read
doc = REXML::Document.new(xml)
Run Code Online (Sandbox Code Playgroud)
当我在rails控制台中运行此代码时,我看到:
1.9.3-p194 :033 > doc.inspect
=> "<UNDEFINED> ... </>"
Run Code Online (Sandbox Code Playgroud)
我似乎无法理解为什么它没有正确加载文件,我也无法访问文本xml元素.
它正确加载,文档只是没有根节点.
require "rexml/document"
doc = REXML::Document.new DATA.read
doc.root_node # => <UNDEFINED> ... </>
doc.inspect # => "<UNDEFINED> ... </>"
doc.to_s # => "<article>\n <text>hello world</text>\n</article>\n"
doc.get_elements('//article') # => [<article> ... </>]
doc.get_elements('//text') # => [<text> ... </>]
__END__
<article>
<text>hello world</text>
</article>
Run Code Online (Sandbox Code Playgroud)
顺便说一句,我认为Ruby社区几乎普遍支持Nokogiri进行xml解析.
归档时间: |
|
查看次数: |
5020 次 |
最近记录: |