我在 Java 中使用 Dom Parser 来处理 XML 文件。我是否有节点类型的对象,如何在该节点内按名称查找元素?我知道如何通过所有文档中的标签名称找到,我有:
dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(this.file);
doc.getDocumentElement().normalize();
NodeList nList = doc.getElementsByTagName("SomeTag");
但是,在nList
的每个项目中,如何通过tagName找到它?我是否应该循环并进行比较?
编辑:
XML树的结构如下,有很多代理:
</agent>
<agent name='agente2' id='ug4pht1ju6ru8u5aot37tcb5po'>
<AgentModel>
<Posicion></Posicion>
<MarcoReferencia></MarcoReferencia>
<AgenteDescripcion></AgenteDescripcion>
<Componentes>
</Componentes>
<Objetivo>
<Nombre></Nombre>
<Descripcion></Descripcion>
<Activacion></Activacion>
<Finalizacion></Finalizacion>
<Exito></Exito>
<Fracaso></Fracaso>
<Ontologia></Ontologia>
<Entradas>
</Entradas>
<Salidas>
</Salidas>
</Objetivo>
<Servicios>
</Servicios>
<Propiedades>
<Nombre></Nombre>
<Calidad></Calidad>
<Auditable></Auditable>
<Garantia></Garantia>
<Capacidad></Capacidad>
<Confiabilidad></Confiabilidad>
</Propiedades>
<Capacidad>
<Habilidades></Habilidades>
<Representacion></Representacion>
<Lenguaje></Lenguaje>
</Capacidad>
<Restriccion>
<Normas></Normas>
<Preferencias></Preferencias>
<Permisos></Permisos>
</Restriccion>
</AgentModel>
<CommunicationModel>
</CommunicationModel>
<CoordinationModel>
</CoordinationModel>
<MarcoOntologicoIndividual>
</MarcoOntologicoIndividual>
<Asociaciones>
</Asociaciones>
<Actores>
</Actores>
<CasosUso>
</CasosUso>
</agent>
所以,在一个NodeList中,a拥有所有代理,然后,对于每个代理,我想要按名称查找标签