JFileChooser vers Mysql..

Résolu
Yxade Messages postés 8 Date d'inscription mercredi 8 décembre 2004 Statut Membre Dernière intervention 1 septembre 2005 - 25 mai 2005 à 18:29
Yxade Messages postés 8 Date d'inscription mercredi 8 décembre 2004 Statut Membre Dernière intervention 1 septembre 2005 - 26 mai 2005 à 17:48
Bonjour,

J'ai un probleme lors de l'insertion d'une chemin provenant d'un JFileChooser dans mysql:

Mon chemin s'affiche avec un System.out.println(monChemin), mais lorsque je l'envoie a ma base, il apparait sans les \

J'ai essayé de rajouter un \ dans mon chemin (pour qu'il ressemble a :
c:\\test\dir\\exemple) mais ca ne marche pas, et j'obtient une erreur
quand je tente de remplacer \ par / .

Y a t'il une operation magique pour que mon chemin soit inséré correctement dans mysql?

4 réponses

Yxade Messages postés 8 Date d'inscription mercredi 8 décembre 2004 Statut Membre Dernière intervention 1 septembre 2005
26 mai 2005 à 17:48
C'est bon, ca marche, en faite, ils était doublé de base dans java, donc j'ai du tout doubler, et ca marche:



String scene =
"c:\\windows\\plop"; <= à l'ecran on voit
ca: c:\windows\plop

System.out.println(scene);

String plop = scene.replaceAll("\\\", "\\\\\\\");


System.out.println(plop);
<= à l'ecran on a ca: c:\\windows\\plop

Attention, Mysql demande a ce que les slash soit doublés (donc avoir: c:\\windows\\plop pour insérer correctement un chemin.)
3
safisoft Messages postés 489 Date d'inscription vendredi 30 janvier 2004 Statut Membre Dernière intervention 13 mai 2009 6
26 mai 2005 à 09:27
je croi ke JFileChooser retourne par defaut un path du genre: "c:/dir/subdir/file" alors pas la paine de remplacer koi ke soit, je crois ke ton pbm est ds les req d'insertion, tu doi verifier!
0
Yxade Messages postés 8 Date d'inscription mercredi 8 décembre 2004 Statut Membre Dernière intervention 1 septembre 2005
26 mai 2005 à 09:59
En faite, le JFileChooser renvoie un String du type: "c:\\dir\\subdir\\file" donc si je l'affiche à l'ecran, j'obtiens bien "c:\dir\subdir\file"

Mais le probleme, c'est que mysql demande aussi a ce qu'on double les slash...

Du coup, il faudrait que je lui envoie un chemin du style: "c:\\\\dir\\\\subdir\\\\file"

Et c'est la que ca coince: java refuse obstinément ma commande: monString.replaceAll("\", "\\\");

C'est donc sur cette commande que je bloque :/
0
Yxade Messages postés 8 Date d'inscription mercredi 8 décembre 2004 Statut Membre Dernière intervention 1 septembre 2005
26 mai 2005 à 17:27
En faite, ca vien du replaceAll qui me fait une erreur: est ce que
c'est normal que cette fonction ne marche pas, et si oui, pourquoi?:



String scene = "c:\\windows\\plop";

System.out.println(scene);

String plop = scene.replaceAll("\", "//");

System.out.println(plop);
0
Rejoignez-nous