Java - Extraer información de un nodo

 
Vista:

Extraer información de un nodo

Publicado por Ale (2 intervenciones) el 04/04/2007 10:55:47
Tengo el siguiente xml:

<?xml version="1.0" encoding="ISO-8859-1"?>
<lista>
<elemento name="elem1">
<campo>Valor campo 1</campo>
</elemento>
<elemento name="elem2">
<campo>Valor campo 2</campo>
</elemento>
</lista>

del que quiero extraer el contenido de los nodos 'campo', es decir "Valor campo 1" y "Valor campo 2".

Tengo el siguiente código:

DOMParser p = new DOMParser();
try {
p.parse(pathOrigen);
} catch (SAXException e) {
System.out.println("Excepcion SAX");
} catch (IOException e) {
System.out.println("Excepcion IO");
}

Document docXML = p.getDocument();
NodeList nodosHijos = docXML.getElementsByTagName("campo");
int longitud = nodosHijos.getLength();

for (int i = 0; i < longitud; i++) {
Node aux = nodosHijos.item(i);
String valor = aux.getNodeValue(); //<------ linea donde no sé que poner
System.out.println(valor);
}

Pero obtengo siempre valor = null.
Los atributos (por ejemplo, 'name' en 'elemento') no tengo problemas en obtenerlos, pero de la otra forma no puedo.

Alguna idea?

Gracias y saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Extraer información de un nodo

Publicado por angel (537 intervenciones) el 04/04/2007 11:40:13
Solo tiens que cambiar la linea

String valor = aux.getNodeValue();

por

String valor = aux.getFirstChild().getNodeValue();

Es decir...en aux...tiens almacenado el nodo "campo" que es un nodo etiqueta ahora tiens que acceder a su nodo hijo , el texto que hay dentro,, que es un nodo de tipo texto...y cojer su valor con getNodeValue()..

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Extraer información de un nodo

Publicado por Ale (2 intervenciones) el 04/04/2007 12:23:25
Perfecto.

Muchas gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar