Chaine de caractère en java???
Résolu/Fermé
aminos88
Messages postés
124
Date d'inscription
samedi 9 décembre 2000
Statut
Membre
Dernière intervention
17 février 2014
-
10 mars 2009 à 19:03
aminos88 Messages postés 124 Date d'inscription samedi 9 décembre 2000 Statut Membre Dernière intervention 17 février 2014 - 12 mars 2009 à 18:59
aminos88 Messages postés 124 Date d'inscription samedi 9 décembre 2000 Statut Membre Dernière intervention 17 février 2014 - 12 mars 2009 à 18:59
A voir également:
- Chaine de caractère en java???
- Caractère ascii - Guide
- Caractere speciaux - Guide
- Caractère spéciaux - Guide
- Waptrick java football - Télécharger - Jeux vidéo
- Caractère spéciaux mac clavier - Guide
7 réponses
aminos88
Messages postés
124
Date d'inscription
samedi 9 décembre 2000
Statut
Membre
Dernière intervention
17 février 2014
2
12 mars 2009 à 14:58
12 mars 2009 à 14:58
Merci mais moi je veux un code qui peut me renvoyer plusieures partie d'une chaine
voila l'exemlpe que je veux le réaliser
EntréeChaine=RESPONSE[requestID=248177987, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.5.0 = LAPTOP; 1.3.6.1.2.1.2.1.0 = 3; 1.3.6.1.2.1.1.3.0 = 3:31:33.90; 1.3.6.1.2.1.1.7.0 = 76]]
SortieChaine1=LAPTOP
SortieChaine2= 3
SortieChaine3= 3:31:33.90
SortieChaine4=76
Merci de répondre le plus vite possible c urgnet
Bonne soirée
voila l'exemlpe que je veux le réaliser
EntréeChaine=RESPONSE[requestID=248177987, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.5.0 = LAPTOP; 1.3.6.1.2.1.2.1.0 = 3; 1.3.6.1.2.1.1.3.0 = 3:31:33.90; 1.3.6.1.2.1.1.7.0 = 76]]
SortieChaine1=LAPTOP
SortieChaine2= 3
SortieChaine3= 3:31:33.90
SortieChaine4=76
Merci de répondre le plus vite possible c urgnet
Bonne soirée
aminos88
Messages postés
124
Date d'inscription
samedi 9 décembre 2000
Statut
Membre
Dernière intervention
17 février 2014
2
10 mars 2009 à 19:41
10 mars 2009 à 19:41
S.V.P répondez moi c urgent
Merci
Merci
Oo
tu es sûr que c'est du JAVA ?
tu es sûr que c'est du JAVA ?
aminos88
Messages postés
124
Date d'inscription
samedi 9 décembre 2000
Statut
Membre
Dernière intervention
17 février 2014
2
10 mars 2009 à 20:29
10 mars 2009 à 20:29
L'essentiel c pas du java ou nn
l'essentiel que c une chaine de caractère et je veut la faire des traitements
merci
l'essentiel que c une chaine de caractère et je veut la faire des traitements
merci
Utilisateur anonyme
11 mars 2009 à 01:24
11 mars 2009 à 01:24
Salut,
oui à condition que la chaîne soit accessible aux 2 méthodes, par exemple en la déclarant par exemple dans la classe. C'est pareil pour ce que tu veux retourner (retour dans l'exemple qui suit).
RESPONSE[requestID=1918137061, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.5.0 = PCS]]
Appelons cette chaîne maChaine, et il est évident que c'est un String.
Il y a plusieurs manières de récupérer une partie de cette chaîne.
Nous utiliserons la méthode substring.
Ici nous voulons retourner le mot PCS et supposerons que quelle que soit la chaîne, le mot à récupérer se trouve toujours entre (= ) et (]])
soit .......... = lemot]] car il faut bien une hypothèse de travail...
Voici comment faire:
String maChaine =
"RESPONSE[requestID=1918137061, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.5.0 = PCS]]";
String retour = ""; // pour retourner le résultat
// nous aurons besoin de la longueur de la chaine:
int lgCh = maChaine.length();
// nous vérifions que maChaine termine bien par ]]
if (maChaine.endsWith("]]"))
{
// recherche de l'endroit du signe = dans la chaine
int index = maChaine.lastIndexOf("="); // lastIndexOf pour ne pas prendre le 1er = mais le dernier
// s'il n'y a pas de signe = , le résultat est index = -1
System.out.println("lgCh/index = " + lgCh + "/" + index);
if (index > -1) //c'est bon
// cas général: index prend une valeur de 0 a longueur de la chaine -1
// dans notre exemple index doit etre = a longueur - 7
{
retour = maChaine.substring(index+2,lgCh-2);
}
else retour = ""; // afficher un message d'erreur
}
else retour = ""; // afficher un message d'erreur
System.out.println("retour = " + retour);
Cordialement,
Dan
oui à condition que la chaîne soit accessible aux 2 méthodes, par exemple en la déclarant par exemple dans la classe. C'est pareil pour ce que tu veux retourner (retour dans l'exemple qui suit).
RESPONSE[requestID=1918137061, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.5.0 = PCS]]
Appelons cette chaîne maChaine, et il est évident que c'est un String.
Il y a plusieurs manières de récupérer une partie de cette chaîne.
Nous utiliserons la méthode substring.
Ici nous voulons retourner le mot PCS et supposerons que quelle que soit la chaîne, le mot à récupérer se trouve toujours entre (= ) et (]])
soit .......... = lemot]] car il faut bien une hypothèse de travail...
Voici comment faire:
String maChaine =
"RESPONSE[requestID=1918137061, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.5.0 = PCS]]";
String retour = ""; // pour retourner le résultat
// nous aurons besoin de la longueur de la chaine:
int lgCh = maChaine.length();
// nous vérifions que maChaine termine bien par ]]
if (maChaine.endsWith("]]"))
{
// recherche de l'endroit du signe = dans la chaine
int index = maChaine.lastIndexOf("="); // lastIndexOf pour ne pas prendre le 1er = mais le dernier
// s'il n'y a pas de signe = , le résultat est index = -1
System.out.println("lgCh/index = " + lgCh + "/" + index);
if (index > -1) //c'est bon
// cas général: index prend une valeur de 0 a longueur de la chaine -1
// dans notre exemple index doit etre = a longueur - 7
{
retour = maChaine.substring(index+2,lgCh-2);
}
else retour = ""; // afficher un message d'erreur
}
else retour = ""; // afficher un message d'erreur
System.out.println("retour = " + retour);
Cordialement,
Dan
aminos88
Messages postés
124
Date d'inscription
samedi 9 décembre 2000
Statut
Membre
Dernière intervention
17 février 2014
2
11 mars 2009 à 21:55
11 mars 2009 à 21:55
Merci beaucoup sa marché très bien c gentil de votre part
Maintenant est ce que vous pouvez me donnez un code qui je je peut le considerer comme général et il fonctionne avec plusieures cas c â d est ce que je peut retourner plusieures parties d'une même chiane
voila comme cette exemple:
chaine1=RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.7.0 = 76; 1.3.6.1.2.1.1.5.0 = PCS]]
chaineRes1=76
chineRes2= PCS
Merci beaucoup
Maintenant est ce que vous pouvez me donnez un code qui je je peut le considerer comme général et il fonctionne avec plusieures cas c â d est ce que je peut retourner plusieures parties d'une même chiane
voila comme cette exemple:
chaine1=RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.7.0 = 76; 1.3.6.1.2.1.1.5.0 = PCS]]
chaineRes1=76
chineRes2= PCS
Merci beaucoup
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Utilisateur anonyme
12 mars 2009 à 00:07
12 mars 2009 à 00:07
Salut,
Comme pour le premier cas :
RESPONSE[requestID=1918137061, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.5.0 = PCS]]
où pour extraire PCS (ou bien n'importe quelle autre valeur) il faut absolument que cette valeur se trouve entre le signe = un espace et ]] et que cet "ensemble" >>>> = laValeur]] se trouve toujours à la fin de la chaîne, pour tout autre extrait à faire, il faut que cet extrait soit toujours précédé et suivi des MÊMES CARACTÈRES, car je suppose qu'on ne peut pas obtenir une structure sur mesure de cette chaîne.
Il faut donc connaître la structure de toutes les réponses possibles et que cette structure soit toujours la même.
Par exemple avec chaine1:
RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.7.0 = 76; 1.3.6.1.2.1.1.5.0 = PCS]]
je vois que tu as ajouté pour VBS[....... = 76; la logique voudrait que ce soit = 76, mème si ce serait plus facile d'extraire 76 s'il est suivi d'un ; (à condition qu'il n'existe pas d'autre ; dans la chaîne.
Essais donc de trouver tous les cas possibles de réponses et on déterminera la méthode pour faire ce ou ces extraits. Je pense qu'on a toujours les reponse sous la forme:
unLibellé=uneValeur, unAutreLibellé=uneAutreValeur, etc... et pour finir unDernierLibelle=une DernièreValeur]]
Corriges moi si nécessaire.
On pourait peut-être utiliser autre chose que substring, je pense par exemple à StringTokenizer mais pas forcément.
Cordialement,
Dan
Comme pour le premier cas :
RESPONSE[requestID=1918137061, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.5.0 = PCS]]
où pour extraire PCS (ou bien n'importe quelle autre valeur) il faut absolument que cette valeur se trouve entre le signe = un espace et ]] et que cet "ensemble" >>>> = laValeur]] se trouve toujours à la fin de la chaîne, pour tout autre extrait à faire, il faut que cet extrait soit toujours précédé et suivi des MÊMES CARACTÈRES, car je suppose qu'on ne peut pas obtenir une structure sur mesure de cette chaîne.
Il faut donc connaître la structure de toutes les réponses possibles et que cette structure soit toujours la même.
Par exemple avec chaine1:
RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.7.0 = 76; 1.3.6.1.2.1.1.5.0 = PCS]]
je vois que tu as ajouté pour VBS[....... = 76; la logique voudrait que ce soit = 76, mème si ce serait plus facile d'extraire 76 s'il est suivi d'un ; (à condition qu'il n'existe pas d'autre ; dans la chaîne.
Essais donc de trouver tous les cas possibles de réponses et on déterminera la méthode pour faire ce ou ces extraits. Je pense qu'on a toujours les reponse sous la forme:
unLibellé=uneValeur, unAutreLibellé=uneAutreValeur, etc... et pour finir unDernierLibelle=une DernièreValeur]]
Corriges moi si nécessaire.
On pourait peut-être utiliser autre chose que substring, je pense par exemple à StringTokenizer mais pas forcément.
Cordialement,
Dan
Utilisateur anonyme
12 mars 2009 à 15:31
12 mars 2009 à 15:31
Salut,
Voilà, vos désirs sont des ordres:
String chaine1="RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, "
+ "VBS[1.3.6.1.2.1.1.7.0 = 76; 1.3.6.1.2.1.1.5.0 = PCS]]";
String chaine2="RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, "
+ "VBS[1.3.6.1.2.1.1.7.0 = 76; 1.2.3.4.5.6.7.8.0 = 412; 1.3.6.1.2.1.1.5.0 = PCS]]";
String chaine3="RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, "
+ "VBS[1.3.6.1.2.1.1.5.0 = PCS]]";
String chaine4="RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, "
+ "VBS[1.3.6.1.2.1.1.7.0 = 76; 1.2.3.4.5.6.7.8.0 = 412]]";
String chaine5="RESPONSE[requestID=248177987, errorStatus=Success(0), errorIndex=0,"
+ "VBS[1.3.6.1.2.1.1.5.0 = LAPTOP; 1.3.6.1.2.1.2.1.0 = 3; 1.3.6.1.2.1.1.3.0 = 3:31:33.90; 1.3.6.1.2.1.1.7.0 = 76]]";
String resultat = "";
String mano = chaine1;
System.out.println("mano = " + mano);
// supposons qu'il n'y a jamais de (;) ailleurs qu'entre VBS[..... et ...]]
// et que c'est ici qu'on fera 0, 1, 2, 100, ... extractions
// j'exagere sans doute mais commençons par les 2 extractions de ton exemple.
int i = 0;
for (i = 0; i < 5; i++) // pour tester 5 chaines
{
int nbrExtract = 0;
int ind1 = mano.indexOf("VBS"); // mais est-ce que nous n'avons que VBS ? si non on corrigera
// en ne prenant que la partie de chaine1 qui commence par le deuxieme ([)
if (ind1 > -1) // si oui OK
{
mano = mano.substring(ind1); // on ne garde que la partie ou on veut extraire
System.out.println("mano = " + mano);
ind1 = 0;
int ind2 = 0;
//Extraction:
while (ind1 > -1)
{
ind1 = mano.indexOf(";");
if (ind1 > -1) // si oui OK
{
ind2 = mano.indexOf("= ");
if (ind2 > -1) // si oui OK, si non c'est une erreur de structure
{
nbrExtract++;
resultat+= "Resultat" + nbrExtract + " " + mano.substring(ind2+2, ind1) + ", ";
System.out.println("resultat = " + resultat);
// on supprime la partie qui nous a servi a faire cette extraction
mano = mano.substring(ind1+1);
System.out.println("mano = " + mano);
}
}
}
// il reste >>>> 1.3.6.1.2.1.1.5.0 = PCS]]
int lgreste = mano.length();
// nous vérifions que maChaine termine bien par ]]
if (maChaine.endsWith("]]"))
{
ind2 = mano.indexOf("= ");
if (ind2 > -1) // si oui OK
{
nbrExtract++;
resultat+= "Resultat" + nbrExtract + " " + mano.substring(ind2+2, lgreste-2) + ".";
System.out.println("resultat = " + resultat);
}
}
}
System.out.println();
if (i == 0)
mano = chaine2;
if (i == 1)
mano = chaine3;
if (i == 2)
mano = chaine4;
if (i == 3)
mano = chaine5;
System.out.println("mano = " + mano);
resultat = "";
}
Cordialement,
Dan
Voilà, vos désirs sont des ordres:
String chaine1="RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, "
+ "VBS[1.3.6.1.2.1.1.7.0 = 76; 1.3.6.1.2.1.1.5.0 = PCS]]";
String chaine2="RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, "
+ "VBS[1.3.6.1.2.1.1.7.0 = 76; 1.2.3.4.5.6.7.8.0 = 412; 1.3.6.1.2.1.1.5.0 = PCS]]";
String chaine3="RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, "
+ "VBS[1.3.6.1.2.1.1.5.0 = PCS]]";
String chaine4="RESPONSE[requestID=512652454, errorStatus=Success(0), errorIndex=0, "
+ "VBS[1.3.6.1.2.1.1.7.0 = 76; 1.2.3.4.5.6.7.8.0 = 412]]";
String chaine5="RESPONSE[requestID=248177987, errorStatus=Success(0), errorIndex=0,"
+ "VBS[1.3.6.1.2.1.1.5.0 = LAPTOP; 1.3.6.1.2.1.2.1.0 = 3; 1.3.6.1.2.1.1.3.0 = 3:31:33.90; 1.3.6.1.2.1.1.7.0 = 76]]";
String resultat = "";
String mano = chaine1;
System.out.println("mano = " + mano);
// supposons qu'il n'y a jamais de (;) ailleurs qu'entre VBS[..... et ...]]
// et que c'est ici qu'on fera 0, 1, 2, 100, ... extractions
// j'exagere sans doute mais commençons par les 2 extractions de ton exemple.
int i = 0;
for (i = 0; i < 5; i++) // pour tester 5 chaines
{
int nbrExtract = 0;
int ind1 = mano.indexOf("VBS"); // mais est-ce que nous n'avons que VBS ? si non on corrigera
// en ne prenant que la partie de chaine1 qui commence par le deuxieme ([)
if (ind1 > -1) // si oui OK
{
mano = mano.substring(ind1); // on ne garde que la partie ou on veut extraire
System.out.println("mano = " + mano);
ind1 = 0;
int ind2 = 0;
//Extraction:
while (ind1 > -1)
{
ind1 = mano.indexOf(";");
if (ind1 > -1) // si oui OK
{
ind2 = mano.indexOf("= ");
if (ind2 > -1) // si oui OK, si non c'est une erreur de structure
{
nbrExtract++;
resultat+= "Resultat" + nbrExtract + " " + mano.substring(ind2+2, ind1) + ", ";
System.out.println("resultat = " + resultat);
// on supprime la partie qui nous a servi a faire cette extraction
mano = mano.substring(ind1+1);
System.out.println("mano = " + mano);
}
}
}
// il reste >>>> 1.3.6.1.2.1.1.5.0 = PCS]]
int lgreste = mano.length();
// nous vérifions que maChaine termine bien par ]]
if (maChaine.endsWith("]]"))
{
ind2 = mano.indexOf("= ");
if (ind2 > -1) // si oui OK
{
nbrExtract++;
resultat+= "Resultat" + nbrExtract + " " + mano.substring(ind2+2, lgreste-2) + ".";
System.out.println("resultat = " + resultat);
}
}
}
System.out.println();
if (i == 0)
mano = chaine2;
if (i == 1)
mano = chaine3;
if (i == 2)
mano = chaine4;
if (i == 3)
mano = chaine5;
System.out.println("mano = " + mano);
resultat = "";
}
Cordialement,
Dan
Utilisateur anonyme
12 mars 2009 à 18:03
12 mars 2009 à 18:03
Re,
Et voici la version normale avec une seule chaîne et sans les "println" de contrôle de resultat(qui sont laissés en commentaires //):
String reponse ="RESPONSE[requestID=248177987, errorStatus=Success(0), errorIndex=0,"
+ "VBS[1.3.6.1.2.1.1.5.0 = LAPTOP; 1.3.6.1.2.1.2.1.0 = 3; 1.3.6.1.2.1.1.3.0 = 3:31:33.90; 1.3.6.1.2.1.1.7.0 = 76]]";
String resultat = "";
String mano = reponse;
System.out.println("La chaine traitee = " + mano);
int i = 0;
int ind1 = 0;
int ind2 = 0;
int lgreste = 0;
int nbrExtract = 0;
ind1 = mano.indexOf("VBS"); // mais est-ce que nous n'avons que VBS ? si non on corrige
// en ne prenant que la partie de reponse qui commence par le deuxieme ([)
ind1 = mano.lastIndexOf("["); // on trouve le deuxieme ([) celui de (VBS[) ou de (XXX[)
if (ind1 > -1) // si oui OK si non >>>>>> erreur de structure
{
mano = mano.substring(ind1); // on ne garde que la partie ou on veut extraire
System.out.println("La zone d'extraction = " + mano + "\n");
ind1 = 0;
ind2 = 0;
//Extraction:
while (ind1 > -1)
{
ind1 = mano.indexOf(";");
if (ind1 > -1) // si oui OK
{
ind2 = mano.indexOf("= ");
if (ind2 > -1) // si oui OK, si non c'est une erreur de structure
{
nbrExtract++;
resultat+= "Résultat" + nbrExtract + " = " + mano.substring(ind2+2, ind1) + "\n";
//System.out.println("resultat = " + resultat);
// on supprime la partie qui nous a servi a faire cette extraction
mano = mano.substring(ind1+1);
//System.out.println("mano = " + mano);
}
}
}
// il reste >>>> 1.3.6.1.2.1.1.5.0 = PCS]]
lgreste = mano.length();
// nous vérifions que mano termine bien par ]]
if (mano.endsWith("]]"))
{
ind2 = mano.indexOf("= ");
if (ind2 > -1) // si oui OK
{
nbrExtract++;
resultat+= "Résultat" + nbrExtract + " = " + mano.substring(ind2+2, lgreste-2);
//System.out.println(resultat); //"resultat = " + resultat);
}
}
}
//System.out.println("Le resultat:\n" + resultat + "\n"); //"resultat = " + resultat);
// le résultat peut etre affiché dans une boite de dialogue:
javax.swing.JOptionPane.showMessageDialog(null,resultat); // sans les (,) et le (.) final
Cordialement,
Dan
Et voici la version normale avec une seule chaîne et sans les "println" de contrôle de resultat(qui sont laissés en commentaires //):
String reponse ="RESPONSE[requestID=248177987, errorStatus=Success(0), errorIndex=0,"
+ "VBS[1.3.6.1.2.1.1.5.0 = LAPTOP; 1.3.6.1.2.1.2.1.0 = 3; 1.3.6.1.2.1.1.3.0 = 3:31:33.90; 1.3.6.1.2.1.1.7.0 = 76]]";
String resultat = "";
String mano = reponse;
System.out.println("La chaine traitee = " + mano);
int i = 0;
int ind1 = 0;
int ind2 = 0;
int lgreste = 0;
int nbrExtract = 0;
ind1 = mano.indexOf("VBS"); // mais est-ce que nous n'avons que VBS ? si non on corrige
// en ne prenant que la partie de reponse qui commence par le deuxieme ([)
ind1 = mano.lastIndexOf("["); // on trouve le deuxieme ([) celui de (VBS[) ou de (XXX[)
if (ind1 > -1) // si oui OK si non >>>>>> erreur de structure
{
mano = mano.substring(ind1); // on ne garde que la partie ou on veut extraire
System.out.println("La zone d'extraction = " + mano + "\n");
ind1 = 0;
ind2 = 0;
//Extraction:
while (ind1 > -1)
{
ind1 = mano.indexOf(";");
if (ind1 > -1) // si oui OK
{
ind2 = mano.indexOf("= ");
if (ind2 > -1) // si oui OK, si non c'est une erreur de structure
{
nbrExtract++;
resultat+= "Résultat" + nbrExtract + " = " + mano.substring(ind2+2, ind1) + "\n";
//System.out.println("resultat = " + resultat);
// on supprime la partie qui nous a servi a faire cette extraction
mano = mano.substring(ind1+1);
//System.out.println("mano = " + mano);
}
}
}
// il reste >>>> 1.3.6.1.2.1.1.5.0 = PCS]]
lgreste = mano.length();
// nous vérifions que mano termine bien par ]]
if (mano.endsWith("]]"))
{
ind2 = mano.indexOf("= ");
if (ind2 > -1) // si oui OK
{
nbrExtract++;
resultat+= "Résultat" + nbrExtract + " = " + mano.substring(ind2+2, lgreste-2);
//System.out.println(resultat); //"resultat = " + resultat);
}
}
}
//System.out.println("Le resultat:\n" + resultat + "\n"); //"resultat = " + resultat);
// le résultat peut etre affiché dans une boite de dialogue:
javax.swing.JOptionPane.showMessageDialog(null,resultat); // sans les (,) et le (.) final
Cordialement,
Dan
aminos88
Messages postés
124
Date d'inscription
samedi 9 décembre 2000
Statut
Membre
Dernière intervention
17 février 2014
2
12 mars 2009 à 18:58
12 mars 2009 à 18:58
Merci beaucoup Danimo
Si j'ai besoin d'autre chose
je vais vous contactez
merci encore une foix et bonne soirée
Si j'ai besoin d'autre chose
je vais vous contactez
merci encore une foix et bonne soirée
aminos88
Messages postés
124
Date d'inscription
samedi 9 décembre 2000
Statut
Membre
Dernière intervention
17 février 2014
2
12 mars 2009 à 18:59
12 mars 2009 à 18:59
Merci beaucoup Danimo
Si j'ai besoin d'autre chose
je vais vous contactez
merci encore une foix et bonne soirée
voila mon mail "aminsahnoun@hotmail.com"
Si j'ai besoin d'autre chose
je vais vous contactez
merci encore une foix et bonne soirée
voila mon mail "aminsahnoun@hotmail.com"