Voilà mon fichier xml :
Je veux retourner la liste d'argent pour chaque joueur.
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 <?xml version="1.0" encoding="utf-8" ?> <mnop> <partie id="2" tour="1" main="1"> <tirage>12</tirage> <joueurs> <joueur> <!-- joueur 1 : humain --> <argent>1500</argent> ... </joueur> <joueur type="0"> <!-- joueur 2 cpu --> <argent>800</argent> <... </joueur> <joueur type="4"> <!-- joueur 3 cpu --> <argent>8250</argent> ... </joueur> <joueur type="1"> <!-- joueur 4 cpu --> <argent>70</argent> ... </joueur> </joueurs>
Voici ma fonction :
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 // Affiche l'argent de chaque joueur public List<Integer> afficherArgent() { List list = racine.getChildren("partie"); //On crée un Iterator sur notre liste Iterator i = list.iterator(); while(i.hasNext()) { Element courant = (Element)i.next(); List list2 = courant.getChildren("joueurs"); Iterator i2 = list2.iterator(); while(i2.hasNext()) { Element courant2 = (Element)i2.next(); List list3 = courant2.getChildren("joueur"); Iterator i3 = list3.iterator(); while(i3.hasNext()) { Element courant3 = (Element)i3.next(); //System.out.println(courant3.getChild("argent").getText()); valeursArgent.add(Integer.parseInt(courant3.getChild("argent").getText())); } } } return valeursArgent; }La console me retourne [1500, 800, 8250, 70, 1500, 800, 8250, 70]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public static void main(String[] args) { List<Integer> tableauArgent = new ArrayList<Integer>(); DonneesXML donnees = new DonneesXML(); tableauArgent = donnees.afficherArgent(); System.out.println(tableauArgent); }
alors que çà devrait me retourner [1500, 800, 8250, 70]
Je ne comprends pas pourquoi. Merci de votre aide.
Partager