Physique Chemin D'Accès Au Fichier
Quelle est la meilleure façon d'obtenir le chemin d'accès physique à un fichier en C#?
Mise à JOUR:
J'ai un nom de fichier mais je ne veux pas coder en dur le chemin, car il peut changer. Je sais juste que son chemin d'accès relatif, mais pas de son chemin d'accès physique.
Il n'y a pas suffisamment d'informations pour répondre à votre question. Pouvez-vous expliquer plus en détail ce que vous recherchez?
J'ai un nom de fichier mais je ne veux pas coder en dur le chemin, car il peut changer. Je sais juste que son chemin d'accès relatif, mais pas de son chemin d'accès physique.
+1 pour @Marc Gravel et @Mitchell Petrotta. J'ai été en développement .Net depuis la Beta et je n'ai jamais couru à travers le Système.IO.Chemin d'accès d'objet. Parler de l'apprentissage quelque chose de nouveau chaque jour, je devrais avoir connu sur il y a des années.
Mise à jour re votre commentaire
J'ai un nom de fichier mais je ne veux pas coder en dur le chemin, car il peut changer. Je sais juste que son chemin d'accès relatif, mais pas de son chemin d'accès physique.
+1 pour @Marc Gravel et @Mitchell Petrotta. J'ai été en développement .Net depuis la Beta et je n'ai jamais couru à travers le Système.IO.Chemin d'accès d'objet. Parler de l'apprentissage quelque chose de nouveau chaque jour, je devrais avoir connu sur il y a des années.
Mise à jour re votre commentaire
OriginalL'auteur LB. | 2009-11-03
Vous devez vous connecter pour publier un commentaire.
Pour des applications régulières,
Path.GetFullPath(chemin)
sera de retour cette. Si c'est le web, puisMapPath
est ce que vous voulez (par exemple,Server.MapPath("~/foo/bar")
).Re commentaires; essayez
HttpContext.Current.Server.MapPath(...)
; en l'absense deHttpServerUtility
(commentaires), puis essayez deVirtualPathUtility.ToAbsolute
.OriginalL'auteur Marc Gravell
Si vous êtes à la recherche d'un d'un fichier chemin d'accès absolu, vous voulez Système.IO.Chemin d'accès.GetFullPath:
À mon avis, le
Path
classe est incroyablement utile et largement sous-exploité.OriginalL'auteur Michael Petrotta
La question n'est toujours pas clair, mais je vais prendre un coup...
Si ce n'est dans Asp.Net, vous pouvez utiliser Serveur.MapPath comme dans
Dans un WinForms ou application Console, si le fichier est relatif à l'exécutable, vous pouvez essayer d'utiliser Système.De l'environnement.CurrentDirectory
comme dans
Les deux sont dans la norme des bibliothèques de classe.. La première dans le Système.Web et la prochaine dans le Système.IO.
Je ne crois pas disponibles dans .NET 2.0
les deux MapPath et de la plupart des Chemin des méthodes de revenir à 1.1
OriginalL'auteur David