Acceder

Ver la Versión Completa : [ CONSULTA ] Problema Con Parser XML


MixCas
25/03/13, 10:59:47
Buenas días,


He usado el método SAX Simplificado para realizar este parser xml, el problema son los siguientes, y no se si me podreis orientar:

1.- El primero de ellos es que me aparecen etiquetas HTML y no se quitarlas... ¿Algún método en especial?

2.- La segunda y no menos importante es que el documento xml no es todo el rato por ejemplo:
<noticia>
<tititulo>
<texto>
</....

si no hay campos que no se repiten... empieza con la etiqueta raíz y tengo

<title>
<descripcion>
<logo>
<element>
y apartir de aqui se repite el elemento un par de veces para luego pasar a otro tipo de element con otros subcasos dentro...

Esto es para un proyecto de la universidad... y no se si pedir al profesor que cambie el XML o bien si existe algún método ya que por ejemplo con el parser con la lista que tengo la primera posición estaría todo.. es algo extraño si..

También he pensado en meterle una Base De Datos, para así manejarlo luego más facilmente.. pero no se exactamente que opción escoger...

Espero que me podais orientar un poquito y GRACIAS!!!!

kriogeN
25/03/13, 13:25:16
Con SAX da igual quien es el padre de un elemento, salvo que en el startElement y endElement delos padres lo tengas en cuenta para tener tener en cuanta a los hijos de forma especial.

Pasado a limpio:

Si yo tengo una jerarquía con <title><id/></title><description><id/></description>

En el startElement (y endElement) de id, su localName va a ser igualmente id.

En tu caso dices que los nombres no se repiten, con lo cual te viene al pelo, porque lo único que tienes que hacer es en el startElement guardar en una variable el tipo de dato del que se trata, y en el characters hacer "cases" para cada tipo de elemento.

MixCas
25/03/13, 14:01:52
No se me había ocurrido!!!!!!!!!!!

Pues voy a probarlo y os comento como va la cosa.

Muchas Gracias!!!

Yo ya es que me estaba quedando cegato digo por más que intento... Pues Muchas Gracias , voy a intentarlo, si no sale o algo os lo aviso por este mismo post ;) Gracias! :D