import org.w3c.dom.*;
import java.io.*;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
public class bloqueT252
{
public static void main (String [] args)
{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance ( );
Document documento = null;
try
{
DocumentBuilder builder = factory.newDocumentBuilder();
documento = builder.parse( new File(args[0]) );
}
catch (Exception spe)
{
System.out.println("Error al leer el archivo");
}
// Obtenemos el nodo raíz del documento XML.
Node nodoRaiz = documento.getFirstChild();
NodeList listaNodos = documento.getChildNodes();
for (int i=0; i<listaNodos.getLength(); i++)
if (listaNodos.item(i).getNodeName().equals("micasa"))
nodoRaiz = listaNodos.item(i);
/* Esto hay que hacerlo porque los comentarios también cuentan como nodos */
// Obtenemos la lista de nodos hijos del nodo Raiz.
NodeList listaNodosHijo = nodoRaiz.getChildNodes();
// Hacemos un barrido por todos los nodos hijo
Node nodoHijo;
for (int i=0; i<listaNodosHijo.getLength(); i++)
{
nodoHijo = listaNodosHijo.item(i);
// Nos quedamos con los que su nombre de etiqueta es "habitacion"
if (nodoHijo.getNodeName().equals("habitacion"))
{
// Obtenemos el atributo "id" y lo mostramos por pantalla.
NamedNodeMap atributos = nodoHijo.getAttributes();
Node id = atributos.getNamedItem("id");
System.out.println("Habitacion: "+id.getNodeValue());
}
}
}
}
El código se puede descargar de aquí
No hay comentarios:
Publicar un comentario