Re: no soy capaz de analizar un xml sencillisimo. me podeis ayudar?
Sebastian Gurin <sgurin-nLx/x0uvtyR/[email protected]>
| Newsgroups | gmane.comp.java.javaspain |
|---|---|
| Organization | softpoint |
| Message-ID | <[email protected]> |
On Thu, 7 Aug 2008 17:08:35 +0200 (CEST) [email protected] wrote: > Muchas gracias por tu respuesta. > Pero lo que dices es así. > TEngo unos xmls que vienen con mas campos, pero son sencillos siguiendo el > mismo esquema y no siempre vienen en el mismo orde, > > Me peudes ayudar un poco mas a solucionar este problema? esto no es un problema java sino xml: te recomiendo leer http://www.w3schools.com/xml/default.asp o sino remitirte a la especificación de la xml dom directamente. > > nuchisimas gracias ya que estoy un poco ahogada con esto. > Saludos > > > > Es que estás obteniendo el array de valores de Aplic, y no el de IDs, por > > qué no obtienes el array de nodos REGISTRO y de cada uno sacas el ID y el > > APLIC. Sería algo así (lo hago de memoria, puedo equivocarme en la > > sintaxis). > > > > NodeList nl = doc.getDocumentElement().getElementsByTagName("REGISTRO"); > > if (nl != null && nl.getLength() > 0) { > > for (int i=0; i < nl.getLength(); i++) { > > Element ID = (Element)nl.item(i).getFirstChild(); > > Elment APLIC = (Element)nl.item(i).getLastChild(); > > if (APLIC != null) { > > System.out.println("//APLIC: " + APLIC.getNodeValue()); > > } > > if (ID != null) { > > System.out.println("//ID: " + ID.getNodeValue()); > > } > > } > > } > > > > Ojo, no es la opcion más idónea, porque si alguna vez el ID viene al final > > te lo va a confundir con el APLIC, o si metes otro nodo dentro de > > REGISTRO, > > puede cambiar el orden. Pero si en vez de getFirstChild usas otra funcion > > del API que permita buscar nodos hijo por nombre puedes optimizarlo. Otra > > opción sería que en vez de meterlos como nodos lo hicieras como atributos > > del nodo REGISTRO, así siempre podrías recuperarlos más fácilmente, pero > > depende de la especificación del XML. > > > > Salu2 > > > > > -- Sebastian Gurin <sgurin-nLx/x0uvtyR/[email protected]>