Bonjour,

j'aimerai pouvoir parser un fichier xml en java. Voici un exemple de fichier xml :

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
 
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<a>
	<b>B</b>
	<c>
		<d>D</d>
		<e>E</e>
		<f>
			<g>G</g>
			<i>I</i>
		</f>
		<j>
			<k>K</k>
			<l>
				<m>M</m>
				<n>N</n>
				<o>O</o>
				<p>P</p>
			</l>
			<l>
				<m>M</m>
				<n>N</n>
				<o>O</o>
				<p>P</p>
			</l>
		</j>
	</c>
</a>
J'aimerai pouvoir récupérer les informations B, G et I dans des variables afin de pouvoir les réutiliser. Je n'ai jamais encore effectue cela et j'ai peur de faire trop de boucle. Pour le moment j'ai commencé comme cela, merci de m'aider si vous avez des conseils pratiques :

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
 
 
public class LireXML {
   public static void parse(String path) {
      org.jdom2.Document document = null;
      final Element racine;
 
      SAXBuilder sxb = new SAXBuilder();
 
      try{
           document = sxb.build(new File(source));
      } catch (JDOMException e) {
                System.err.println("Erreur lors de la lecture : " + e);
		System.exit(-1);
      } catch (IOException e) {
		System.err.println("Erreur lors de l'ouverture du fichier : " + e);
		System.exit(-1);
      }
 
 
      racine = document.getRootElement();
 
 
      /** Recuperation de B **/
      Liste listB = racine.getChildren("b");
      Iterator iterator = listB.iterator();
 
      while(iterator.hasNext()) {
           Element elt = (Element) iterator.next();
           String B = elt.getText();
      }
    }
}