Wie kann man am einfachsten das Verzeichnis ermitteln, in dem sich eine Datei befindet? Ich verwende dies, um ein Arbeitsverzeichnis festzulegen.
string filename = @"C:\MyDirectory\MyFile.bat";
In diesem Beispiel sollte ich " C:\MyDirectory ".
Wie kann man am einfachsten das Verzeichnis ermitteln, in dem sich eine Datei befindet? Ich verwende dies, um ein Arbeitsverzeichnis festzulegen.
string filename = @"C:\MyDirectory\MyFile.bat";
In diesem Beispiel sollte ich " C:\MyDirectory ".
Wenn Sie mit einer FileInfo
Objekt, dann gibt es eine einfache Möglichkeit, ein string
Darstellung des vollständigen Pfades des Verzeichnisses über die DirectoryName
Eigentum.
Beschreibung des FileInfo.DirectoryName
Eigentum über MSDN:
Ruft eine Zeichenkette ab, die den vollständigen Pfad des Verzeichnisses angibt.
Beispielhafte Verwendung:
string filename = @"C:\MyDirectory\MyFile.bat";
FileInfo fileInfo = new FileInfo(filename);
string directoryFullPath = fileInfo.DirectoryName; // contains "C:\MyDirectory"
Link zum MSDN-Dokumentation .
Sie können verwenden Path.GetFullPath
für den größten Teil des Falles. Wenn Sie jedoch den Pfad auch dann erhalten möchten, wenn der Dateiname relativ weit entfernt ist, können Sie die folgende generische Methode verwenden:
string GetPath(string filePath)
{
return Path.GetDirectoryName(Path.GetFullPath(filePath))
}
Zum Beispiel:
GetPath("C:\Temp\Filename.txt")
return "C:\Temp\"
GetPath("Filename.txt")
return current working directory
wie "C:\Temp\"
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.
3 Stimmen
Sollte das nicht ein String-Literal sein?
@"C:\MyDirectory\MyFile.bat"
3 Stimmen
Möchte jemand diese Frage schützen, der das Recht dazu hat? 11 ähnliche Antworten mit der letzten von 2017