0

Ruby で大きな xml ファイルに saxparser を使用する方法を説明しているこの興味深い投稿を見つけました http://www.ioncannon.net/programming/643/fast-xml-parsing-with-ruby/ 次の行を使用したいと思います: パーサー = XML::SaxParser.file("posts.xml") がコントローラーの 1 つにありますが、ファイルの代わりに別のアプリからの xml 投稿があります。構文を手伝ってくれる人はいますか? どうもありがとう

4

1 に答える 1

1

私はルビー初心者ですが、これを試してみてください。

解析用のカスタム クラス ファイル:

require 'rubygems'
require 'xml/libxml'
require 'handler'

class SaxParser
  def initialize(xml)
    @parser = XML::SaxParser.new
    @parser.string = xml
    @parser.callbacks = Handler.new
  end

  def parse
    @parser.parse
    @parser.callbacks.elements
  end
end

XML を解析したいファイルでは、次のようになります。

# reference your custom class
require 'sax_parser'

xml = "your xml string"

# parse xml
parsedXml = SaxParser.new(xml).parse

上記のコードは、Luca Guidi のブログのこの投稿から盗まれたものです。

于 2010-06-16T12:17:01.437 に答える