6
votes

Dossier ouvert qui contient une virgule dans son chemin

J'ai besoin d'ouvrir le dossier via l'explorateur Windows à l'aide de C #. Cela fonctionne bien jusqu'à ce qu'il y ait une virgule dans le chemin du dossier. Voici un exemple: xxx

L'erreur est: le chemin "456" n'existe pas ou ce n'est pas un répertoire.

Toute solution Veuillez :)


2 commentaires

Avez-vous essayé de l'échapper?


@ st0le: il n'y a rien à échapper; Il doit juste être entouré de citations doubles.


4 Réponses :


2
votes

Essayez d'entourer le chemin avec double guillemets: xxx


0 commentaires

15
votes

Essayez d'ajouter des citations doubles autour de votre chemin:

System.Diagnostics.Process.Start("explorer.exe", @"""C:\folder\another-folder\123,456""");


1 commentaires

Vous auriez également besoin de le faire si le chemin contenait d'autres caractères spéciaux, tels que l'espace. Donc, être en sécurité, les chaînes de chemin doivent toujours être cotées au double.



0
votes

Essayez d'échapper au nom du fichier:

System.Diagnostics.Process.Start("explorer.exe", "\"C:\\folder\\another-folder\\123,456\"");


0 commentaires

0
votes

Utilisez l'opérateur @ avant la chaîne de chemin de chemin ... puis écrivez simplement le chemin sans caractères d'échappement comme les backslashes, etc. Il rend la chaîne verbatim.

système.diagnostics.process.start (@ "c: \ myapp.exe"); // devrait fonctionner


0 commentaires