Java - Duda con DOM en java

 
Vista:
sin imagen de perfil
Val: 4
Ha aumentado su posición en 8 puestos en Java (en relación al último mes)
Gráfica de Java

Duda con DOM en java

Publicado por David (3 intervenciones) el 14/01/2019 18:36:59
Hola buenas tardes, estoy intentando hacer una lectura de un fichero XML desde java con DOM lo que pasa es que yo quiero modificar el método recorrerRamaDomSecuencial para que muestre la información de un empleado por su nombre y no sé cómo hacerlo. Lo tengo hecho para que lea todo el documento XML en orden pero no sé como seria para muestre la información por su nombre. Es decir por la etiqueta nombre.

Fichero xml: empleados.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<listado>
  <empleado id="1">
    <dni>74857485F</dni>
    <nombre>Mateo</nombre>
    <apellido>Ros</apellido>
    <email>mateo.ros@aaa</email>
    <telefono>65498</telefono>
    <direccion/>
    <fecha_nacimiento/>
  </empleado>
    <empleado id="2">
      <dni>12455L</dni>
      <nombre>Marta</nombre>
      <apellido>Sanz</apellido>
      <email>m.sanz@aaaa</email>
      <telefono>654986</telefono>
      <direccion/>
      <fecha_nacimiento/>
   </empleado>

Código JAVA:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
public static void main(String[] args) {
    try {
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        DocumentBuilder builder = dbf.newDocumentBuilder();
        Document documento = builder.parse(new File("empleados.xml"));
 
 
        recorrerRamaDom(documento);
 
    } catch (Exception e) {
        e.printStackTrace();
    }
 
}
 
public static void recorrerRamaDom(Node nodo) {
 
    if (nodo != null) {
 
        System.out.println(nodo.getNodeName() + ": " + nodo.getNodeValue());
 
        NodeList hijos = nodo.getChildNodes();
 
        for (int i = 0; i < hijos.getLength(); i++) {
 
            Node nodoNieto = hijos.item(i);
 
            recorrerRamaDom(nodoNieto);
        }
    }
}
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
sin imagen de perfil
Val: 755
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Duda con DOM en java

Publicado por Yamil Bracho (2315 intervenciones) el 14/01/2019 18:50:51
Seria algo como :

1
2
3
4
5
6
7
8
9
10
11
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = dbf.newDocumentBuilder();
Document documento = builder.parse(new File("empleados.xml"));
 
NodeList nList = documento.getElementsByTagName("empleado");
for (int i = 0; i < nList.getLength(); i++)
{
	Node nNode = nList.item(i);
	Element eElement = (Element) nNode;
	Element cElement =  (Element) eElement.getElementsByTagName("nombre").item(0);
}
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