use*_*603 4 c# string directory path
例如,
string path = @"C:\User\Desktop\Drop\images\";
Run Code Online (Sandbox Code Playgroud)
我只需要得到 @"C:\User\Desktop\Drop\
这有什么简单的方法吗?
你可以使用Path
和Directory
类:
DirectoryInfo parentDir = Directory.GetParent(Path.GetDirectoryName(path));
string parent = parentDir.FullName;
Run Code Online (Sandbox Code Playgroud)
请注意,如果路径不以directory-separator char结尾,则会得到不同的结果\
.然后images
将被理解为文件名而不是目录.
您也可以使用后续调用 Path.GetDirectoryName
string parent = Path.GetDirectoryName(Path.GetDirectoryName(path));
Run Code Online (Sandbox Code Playgroud)
此行为记录在此处:
由于返回的路径不包含DirectorySeparatorChar或AltDirectorySeparatorChar,因此将返回的路径传回GetDirectoryName方法将导致在结果字符串的每次后续调用中截断一个文件夹级别.例如,将路径"C:\ Directory\SubDirectory\test.txt"传递到GetDirectoryName方法将返回"C:\ Directory\SubDirectory".将该字符串"C:\ Directory\SubDirectory"传递到GetDirectoryName将导致"C:\ Directory".