Jeśli pracujesz z FileInfoobiektem, istnieje prosty sposób na wyodrębnienie stringreprezentacji pełnej ścieżki katalogu za pośrednictwem DirectoryNamewłaściwości.
Opis FileInfo.DirectoryNamenieruchomości za pośrednictwem MSDN:
Możesz użyć Path.GetFullPathw większości przypadków. Ale jeśli chcesz uzyskać ścieżkę również w przypadku, gdy nazwa pliku jest względnie zlokalizowana, możesz użyć poniższej ogólnej metody:
OP potrzebuje, "C:\MyDirectory"a nie potrzebuje MyDirectory. Porada dotycząca stosowania metod manipulacji ciągiem jest ryzykowna, istnieje wiele pułapek, a raczej należy stosować Pathmetody dedykowane .
@"C:\MyDirectory\MyFile.bat"
Odpowiedzi:
Jeśli zdecydowanie masz absolutną ścieżkę, użyj
Path.GetDirectoryName(path)
.Jeśli możesz uzyskać tylko nazwę względną, użyj
new FileInfo(path).Directory.FullName
.Należy pamiętać, że
Path
iFileInfo
oba znajdują się w przestrzeni nazwSystem.IO
.źródło
new FileInfo(path).Directory.FullName
powinien działać w obu przypadkach.źródło
źródło
Możesz użyć
System.IO.Path.GetDirectory(filename)
lub zmienić ścieżkę wFileInfo
i użyćFileInfo.Directory
.Jeśli robisz inne rzeczy ze ścieżką,
FileInfo
może to mieć zalety.źródło
Użyj poniższego kodu, aby uzyskać ścieżkę do folderu
To zwróci „C: \ MyDirectory” w twoim przypadku
źródło
Możesz użyć
Path.GetDirectoryName
i po prostu podać nazwę pliku.Łącze MSDN
źródło
Jeśli pracujesz z
FileInfo
obiektem, istnieje prosty sposób na wyodrębnieniestring
reprezentacji pełnej ścieżki katalogu za pośrednictwemDirectoryName
właściwości.Opis
FileInfo.DirectoryName
nieruchomości za pośrednictwem MSDN:Przykładowe użycie:
Link do dokumentacji MSDN .
źródło
Możesz pobrać bieżącą ścieżkę aplikacji, używając:
Powodzenia!
źródło
Najpierw musisz użyć przestrzeni nazw System.IO. Następnie;
lub
źródło
Możesz użyć
Path.GetFullPath
w większości przypadków. Ale jeśli chcesz uzyskać ścieżkę również w przypadku, gdy nazwa pliku jest względnie zlokalizowana, możesz użyć poniższej ogólnej metody:Na przykład:
GetPath("C:\Temp\Filename.txt")
powrót"C:\Temp\"
GetPath("Filename.txt")
wrócićcurrent working directory
jak"C:\Temp\"
źródło
W moim przypadku musiałem znaleźć nazwę katalogu pełnej ścieżki (katalogu), więc po prostu:
źródło
"C:\MyDirectory"
a nie potrzebujeMyDirectory
. Porada dotycząca stosowania metod manipulacji ciągiem jest ryzykowna, istnieje wiele pułapek, a raczej należy stosowaćPath
metody dedykowane .Path.GetDirectoryName (Context.Parameters [„assemblypath”])
źródło
Path.GetDirectoryName
jest wspomniany w wielu innych odpowiedziach (w tym w odpowiedziach zaakceptowanych)