如何在Ruby on Rails上使用SAX解析器来处理大型XML文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Ruby on Rails上使用SAX解析器来处理大型XML文件相关的知识,希望对你有一定的参考价值。
我将在Ruby on Rails上解析大型XML。我检查了很多解决方案,包括SAX-parser,但是帮助链接现在不能正常工作。 (Using SAX Parser to get several sub-nodes?)
我是新手。如果某人的代码运行良好,请分享给初学者。
答案
你应该尝试Ox
它还有一些SAX示例in the documentation
require 'stringio'
require 'ox'
class Sample < ::Ox::Sax
def start_element(name); puts "start: #{name}"; end
def end_element(name); puts "end: #{name}"; end
def attr(name, value); puts " #{name} => #{value}"; end
def text(value); puts "text #{value}"; end
end
io = StringIO.new(%{
<top name="sample">
<middle name="second">
<bottom name="third"/>
</middle>
</top>
})
handler = Sample.new()
Ox.sax_parse(handler, io)
以上是关于如何在Ruby on Rails上使用SAX解析器来处理大型XML文件的主要内容,如果未能解决你的问题,请参考以下文章
如何在我的 Ruby on Rails 应用程序上使用 ruby 2.7
如何在 ruby-on-rails 应用程序上使用 Rack 发送 POST 模拟请求?
如何在 Ruby on Rails 中完成延迟作业后执行 ajax 回调?