Hacer un filtro SAX que traduzca el célebre XML casero de etiquetas en español a etiquetas en inglés. Hacerlo en Ruby o en otro lenguaje.
require 'rexml/document'
require 'rexml/streamlistener'
include REXML
file='./casa.xml'
diccionario = {
"micasa"=>"my house",
"habitacion"=>"room",
"mueble"=>"furniture",
"puerta"=>"door",
"aparador"=>"sideboard",
"bañera"=>"bath"}
class Traduccion
include StreamListener
def initialize(traduc)
@escribe = false
@diccionario=traduc
end
def tag_start(name, attributes)
puts "<"+@diccionario[name]+">"
@escribe = true
end
def tag_end(name)
puts ""
@escribe=false
end
def text(texto)
if @escribe
puts @diccionario[texto]
end
end
end
listener = Traduccion.new(palabras)
parser = Parsers::StreamParser.new(File.new(file), listener)
parser.parse
No hay comentarios:
Publicar un comentario