Hello
alors j'ai un petit problème au niveau de la condition sur ma boucle pour faire une répétition.
alors voila mes données :

ici mon texte :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
 "#----------------------------------------------------------------------\n" +
        "#"+
		"# Variables\n" +
		"#----------------------------------------------------------------------\n" +
		"#> hello\n" +
		"d= \"{poli}_{gtr}_sylda_{BMW}\"\n" +
		"x = \"{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/SS\"\n" +
		"y = \"{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/EE\"\n" +
		"u = \"{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/GT\"\n" +
		"u'  = \"{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/UG\"\n" +
		 "#< end \n" +
		"z=  caln" +
		"#----------------------------------------------------------------------\n";
ici mon 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
<?xml version="1.0" encoding="utf-8"?>
<parametters>
	<value name ="poli">
		"nono"
	</value>
	<value name ="gtr">
		"pupupu"
	</value>
	<value name ="BMW">
		"nounou"
	</value>
	<value name ="AUDI">
		"m3"
	</value>
	<value name ="RN">
		"Rs6"
	</value>
</parametters>
et en faite j'ai fais un code qui permet de remplacer la clé par sa valeur c'est a dire par exemple "poli" sera remplacer dans le texte par "nono".

voici le code :

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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
 
public class Mopl {
 
	public static void main(String[] args) {
		// TODO Auto-generated method stub
 
		 final String ZONE_B = "#>";
		  final String ZONE_E = "#<";
		  final String VALUE_B = "{";
		  final String VALUE_E = "}";
 
 
 
		String texte = "#----------------------------------------------------------------------\n" +
        "#"+
		"# Variables\n" +
		"#----------------------------------------------------------------------\n" +
		"#> hello\n" +
		"d= \"{poli}_{gtr}_sylda_{BMW}\"\n" +
		"x = \"{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/SS\"\n" +
		"y = \"{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/EE\"\n" +
		"u = \"{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/GT\"\n" +
		"u'  = \"{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/UG\"\n" +
		 "#< end \n" +
		"z=  caln" +
		"#----------------------------------------------------------------------\n";
 
		int ao = 0;
		int po = 0;
 
//		while(ao >= 0 && po >= 0){
 
		// Pour avoir les positions { et } 
		ao = texte.indexOf(VALUE_B,po);
		po = texte.indexOf(VALUE_E,ao);
		//System.out.println("position 1 : " +ao);
		//System.out.println("position 2 : " + po);
 
		// ce qu'il y a entre { }
		String a = texte.substring(ao+1, po);
		//System.out.println(a);
 
		// Ce qu'il y a avant {etude}
		String b = texte.substring(0, ao-1);
		//System.out.println(b);
 
		// Ce qu'il y a après {etude}
		String c = texte.substring(po+1,texte.length());
		//System.out.println(c);
 
		// On fais appel à la classe Classement
		Classement cl = new Classement("C:\\Users\\ksmaili\\workspace\\voiture.xml"); 
		//System.out.println(cl.getValueByKey(a)); // appel de la méthode getValueByKey
 
 
	System.out.println(b.concat(cl.getValueByKey(a).concat(c)));
		}
//	}
 
}
En faite en sorti j'ai réussi a remplacer "nono" par "poli" :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
#----------------------------------------------------------------------
## Variables
#----------------------------------------------------------------------
#> hello
d= "nono"_{gtr}_sylda_{BMW}"
x = "{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/SS"
y = "{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/EE"
u = "{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/GT"
u'  = "{kiko}/{poli}/script/{poli}_{gtr}_sylda_{BMW}/{conf_cu}/{AUDI}/{RN}/UG"
#< end 
z=  caln#----------------------------------------------------------------------
mais je dois boucler pour le reste !!! comment puis-je faire ? avez vous une petite astuce ?

boucle while ou for ??