Remplacement d'un antislash [Résolu]

Messages postés
6
Date d'inscription
mardi 4 janvier 2005
Dernière intervention
14 juin 2011
- - Dernière réponse : tucobouch
Messages postés
207
Date d'inscription
vendredi 17 février 2006
Dernière intervention
1 mai 2009
- 28 mars 2006 à 11:32
Bonjour à tous,

je ne me rappelles plus ...
Dans une String, je reçois un chemin du style "\\serveur\partage\dir\file.xml". Il me semble que pour accéder au fichier file.xml, il faut mettre des "/" au lieu des "".
Vous rappelez vous la commande de remplacement ? je bute sur le fait que l'antislash est réservé ...
Il me semble que c'est un truc du style : chemin.replace("", "/") mais cela ne fonctione pas ...
Merci de votre aide.

Laurent.
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
1155
Date d'inscription
samedi 17 janvier 2004
Dernière intervention
29 avril 2011
4
3
Merci
Salut,


il faut doubler l'antislash. chemin.replace("\", "/")

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de kirua12
Messages postés
207
Date d'inscription
vendredi 17 février 2006
Dernière intervention
1 mai 2009
6
1
Merci
En java, quand tu met antislash suivit de quelque chose, Java attends un caractere echappé : ainsi quand tu tape " il considere que " est un caractere echapé (le guillemet, c'est a dire que le guillemet n'est pas considéré comme etant la fin de la chaine), si tu veux mettre \ dans une chaine il faut taper : "\" (a la compil \\ est remplacé par \ tout court)

L'echappement permet d'inserer des caracteres speciaux au milieu d'une chaine :
\n rajoute un retour a la ligne
" rajoute un guillemet
\\ rajoute un \
\t une tabulation
\0x0A un caractere ascii de code 0x0A (en hexadecimal)
etc..

dans ta chaine "\\serveur\partage\dir\file.xml" , Java va crier! lol. En effet, il va considerer que p,d et f sont echappés, la bonne maniere de les rentrer dans le code est :
"\\\\serveur\\partage\\dir\\file.xml" A la compil, tous les \\ seront remplacés par \

Pour revenir a ton probleme, pour remplacer tous tes \ en / , il faut respecter les echappement comme plus haut, tu as mal tapé ta ligne :
au lieu de chemin.replace("", "/") (Java considere que "" n'est pas une chaine terminée, c'est normal car le caractere " est echappé et ne considere pas ce caractere comme etant la fin de la chaine);
tape plutot : chemin.replace("\", "/")

Tu verra ça marchera mieux, enfin ça compilera!
Commenter la réponse de tucobouch

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.