Rubino SAXParser Sintassi
Domanda
Ho trovato questo interessante post che spiega come utilizzare SAXParser per grandi dei file XML in rubino http://www.ioncannon.net/programming/643 / fast-xml-analisi-con-ruby / Vorrei usare la linea: parser XML :: = SaxParser.file ( "posts.xml"), in uno dei miei controllori, ma invece di un file ho un posto XML da un'altra applicazione, chiunque aiutare lattina con la sintassi? Grazie mille
Soluzione
Sono un noob rubino, ma dare una prova.
file di classe personalizzato per l'analisi:
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
Ora, nel file che si desidera analizzare il codice XML:
# reference your custom class
require 'sax_parser'
xml = "your xml string"
# parse xml
parsedXml = SaxParser.new(xml).parse
Il codice di cui sopra è stato rubato da questo post sul blog di Luca Guidi.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow