Bonjour tout le monde,
ma methode s'execute parfaitement mais se bloque sur l'instruction de récursivité!!
code:
et j'ai meme essayé ce ci:
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 public static ArrayList getPrefixPath(Node n, int idNoeud) { String nNoeud = n.getNodeName(); listNodeType.add(nNoeud); for (int h=0; h<idNoeud; h++) { Node element= nl.item(h); NodeList enfants = element.getChildNodes(); int cpt = enfants.getLength(); for (int k=0; k<cpt; k++) { Node fils = enfants.item(k); String fi = fils.getNodeName(); if (fi.equals(nNoeud)) { idpere.add(h); } break; } } int Noeuper = Parcours.getMin(idpere, idNoeud); // la methode precedente me donne le resultat correct Node pere= nl.item(Noeuper); if (Noeuper != 0) { getPrefixPath(pere, Noeuper); } else { String per = pere.getNodeName(); listNodeType.add(per); } return listNodeType; }
mais ca ne fontionne pas toujours erreur au niveau de l'appel de la 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 if (Noeuper != 0) { listNode= getPrefixPath(pere, Noeuper); int taille = listNode.size(); for (int gh=0; gh<taille; gh++) { String tarf= (String) listNode.get(gh); listNodeType.add(tarf); } return listNodeType; } else { String per = pere.getNodeName(); listNodeType.add(per); return listNodeType; }
merci d'avance pour votre temps precieux.![]()
Partager