Une boucle pour x répétitions
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:
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:
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:
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:
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 ??