[java] ouverture de dossier
senji
-
kij_82 Messages postés 4260 Statut Contributeur -
kij_82 Messages postés 4260 Statut Contributeur -
Bonjour,
j'ia un petit probleme avec des ouvertures de dossiers, c'est assez con mais j'arrive à ouvrir le dossier :
".\\.\\Base\\"
mais pas le dossier
".\\.\\Base\\A02\\A02 LECHLER 239"
qui ets un sous dossier du premier, si vous pouviez maider plz, j'utilise :
Runtime.getRuntime().exec("cmd.exe /c start "+".\\.\\Base\\");
Runtime.getRuntime().exec("cmd.exe /c start "+".\\.\\Base\\A02\\A02 LECHLER 239");
merci
j'ia un petit probleme avec des ouvertures de dossiers, c'est assez con mais j'arrive à ouvrir le dossier :
".\\.\\Base\\"
mais pas le dossier
".\\.\\Base\\A02\\A02 LECHLER 239"
qui ets un sous dossier du premier, si vous pouviez maider plz, j'utilise :
Runtime.getRuntime().exec("cmd.exe /c start "+".\\.\\Base\\");
Runtime.getRuntime().exec("cmd.exe /c start "+".\\.\\Base\\A02\\A02 LECHLER 239");
merci
A voir également:
- [java] ouverture de dossier
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Dossier appdata - Guide
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
4 réponses
Bonjour,
C'est parce que le nom de ton sous répertoire possède des espaces dans le nom.
Or, comme il y a des espaces et que tu trouve dans une ligne de commande (que tu tente d'exécuter), la suite de ton chemin est interpréter comme un autre paramètre de ta ligne de commande puisque chaque paramètre dans une ligne de commande est séparer par le caractère "espace".
Il te faut donc protéger tes paramètres dès le moment où ce dernier peut possèder des caractères séparateur de type espace.
Exemple :
En gras j'ai ajouté des " (précédé de \ pour ne pas être interprété par Java) pour entourer ton chemin d'accès, ce qui le protègera.
C'est parce que le nom de ton sous répertoire possède des espaces dans le nom.
Or, comme il y a des espaces et que tu trouve dans une ligne de commande (que tu tente d'exécuter), la suite de ton chemin est interpréter comme un autre paramètre de ta ligne de commande puisque chaque paramètre dans une ligne de commande est séparer par le caractère "espace".
Il te faut donc protéger tes paramètres dès le moment où ce dernier peut possèder des caractères séparateur de type espace.
Exemple :
Runtime.getRuntime().exec("cmd.exe /c start \""+".\\.\\Base\\A02\\A02 LECHLER 239\"");
En gras j'ai ajouté des " (précédé de \ pour ne pas être interprété par Java) pour entourer ton chemin d'accès, ce qui le protègera.