Utilisation de / ou \\ pour les chemins de dossier en C #
Lors de l'écriture des chemins d'accès de fichier en C#, j'ai trouvé que je peux écrire quelque chose comme "C:\" ou "C:/" et obtenir le même chemin. Ce qui est recommandé? J'ai entendu quelque part que l'utilisation d'une seule /est plus recommandé que l'utilisation de \ (\ évadé de la séquence).
source d'informationauteur DMan
Vous devez vous connecter pour publier un commentaire.
Windows prend en charge à la fois des séparateurs de chemin, de sorte que les deux vont travailler, au moins pour les chemins locaux (/ne fonctionne pas pour les chemins d'accès au réseau). Le truc, c'est qu'il n'y a pas de réel avantage de l'utilisation de travail, mais non de chemin d'accès standard séparateur (/) sur Windows, en particulier parce que vous pouvez utiliser le verbatim chaîne de caractères littérale:
Le seul cas où j'ai pu voir un avantage de l'utilisation de l' /séparateur est lorsque vous travaillerez avec des chemins relatifs, seulement, et d'utiliser le code de Windows et de Linux. Ensuite, vous pouvez avoir "../foo/bar/baz" pointent vers le même répertoire. Mais même dans ce cas, il vaut mieux quitter le Système.IO espace de noms (Chemin d'accès.DirectorySeparatorCharChemin d'accès.Combiner) pour prendre soin de ces questions.
Veuillez utiliser Chemin d'accès.DirectorySeparatorChar OU mieux, comme Poita utilisation suggérée Chemin d'accès.Combiner.
Utilisation
Path.Combine
et vous n'avez pas besoin de vous soucier de ces sémantique.J'écris des chemins en C# comme ceci:
@"C:\My\Path"
Le caractère @ désactive \ échapper.
Ce n'est pas un C# question - c'est un Windows question. Chemins d'accès dans Windows sont normalement indiqué par une barre oblique inverse: C:. À mon avis, c'est ce que vous devez utiliser en C#. Utilisez " @"C:\" pour empêcher le traitement spécial des backslaash caractères.