bonjour, je parse un fichier xml de cette structure:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
<PatentClassInfo>
<Patentid>7,351,541</Patentid>
<Classid>G01N 33/53(20060101)</Classid>
<Classinfo>Measuring length, thickness, or similar linear dimensions;Measuring angles;Measuring areas;Measuring irregularities of surfaces or contours</Classinfo>
<Patentid>...</Patentid>
<Classid>...</Classid>
<Classinfo>....</Classinfo>
....
</PatentClassInfo>
avec cette methode:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
32
33
34
35
36
37
38
public void ClassInfo(String label){
 
		 org.jdom.Document document;
		 Element racine;
		 String pathconceptclass="Z:\\concept\\conceptclass.xml";
		 String id;
		 Boolean trouv=false;
		 Boolean trouv2=false;
		 SAXBuilder sxb = new SAXBuilder();
		 try
		    { 	
			 document = sxb.build(new File(pathconceptclass));
		     racine=document.getRootElement();
		     List listDoc =racine.getChildren();
			 Iterator i = listDoc.iterator();
		     while ( (i.hasNext()) && (trouv2==false))
		      {   
		     Element courant = (Element)i.next();
		     if (courant.getName().equals("Classid")){
		    	 id=courant.getText();
		    	 System.out.println("Classid");
		    	 StringTokenizer lab =new StringTokenizer(id," ");
		    	 id=lab.nextToken();
		    	 System.out.println(id);
		    	 if (id.equals(label)){
		    		 trouv=true;
		    	 }}
		     else {
		    	 if ((courant.getName().equals("Classinfo")) && (trouv==true)){
		    	 trouv2=true;
		    	 trouv=false;
		    	 System.out.println(courant.getText());
 
		     }}}
		     }
		 catch(Exception e){System.out.println(" we've got a problem");
			e.printStackTrace ();}
	}
dans laquelle je cherche le classid correpondand à un label donné comme paramètre et je veux récupérer la classinfo que de ce label mais le résultat de la ligne:System.out.println(courant.getText()); est le contenu de tous les balises <Classinfo> à part celle que j'ai besoin.