Problème d'affichage du dernier caractère [Résolu]

Signaler
Messages postés
65
Date d'inscription
mardi 13 avril 2010
Statut
Membre
Dernière intervention
29 mars 2011
-
 Utilisateur anonyme -
Salut mes amies

j'ai Utilise la fonction indexOf pour récupérer la position de mes balises, et la fonction substring pour récupérer les bouts de chaînes mais mon probleme c'est quille n'affiche le dernier caractere de mon texte plus tôt il m'affiche une exception .

mon code c comme celui :

int chaine1=myFile.indexOf("Cour de cassation");
int chaine104=myFile.indexOf("[…] ...");
String sol1=myFile.substring(chaine1, chaine104);

sachant que chaine104 c la dernier caractère de mon chaine et j veut l'afficher

Merci pour m'avoir aider .

3 réponses


Salut,

Reprenons le code que tu donnes:

int chaine1=myFile.indexOf("Cour de cassation"); 
int chaine104=myFile.indexOf("[…] ..."); 
String sol1=myFile.substring(chaine1, chaine104); 


Ce code extaira donc de myFile une "sous-chaîne" dont l'indice début est l'indice (adresse) du libellé "Cour de cassation", plus exactement l'indice du "C" et ce jusqu'à l'indice fin (non compris) du libellé "[…] ..." soit juste avant le "["

Or il semble, d'après ce que tu dis, que "[…] ..." doit faire partie de la sous-chaîne à extraire.

Il faudrait donc donc que tu remplaces
int chaine104=myFile.indexOf("[…] ..."); 

par

int chainexxx=myFile.indexOf("le_libellé_non _compris");
qui suit "[…] ..." et remplacer

String sol1=myFile.substring(chaine1, chainexxx);


ou

String sol1=myFile.substring(chaine1);
sans indice fin s'il n'y a plus rien après "[…] ..."

Cordialement,

...\ Dan /...
Messages postés
15815
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
87
Salut,

Il te faut incrémenter ta variable sol1 de la longueur de ta chaine chaine1 avant d'appeler le substring.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement

Ps,

Maintenant, s'il ne te manque vraiment qu'un caractère à la sous-chaîne à extraire, ce dont je doute car avec le code que tu nous donnes ce caractère serait "[", il suffirait d'écrire:
String sol1=myFile.substring(chaine1, chaine104 +1); 


Remarque:

Les noms chaine1 et chaine104 (ainsi que chainexxx que j'ai moi même utilisé) prêtent à confusion, il aurait été préférable de les nommer indiceChaine1, indiceChaine104 et indiceChaineXxx.
Cordialement,

...\ Dan /...