我正在使用Directory.GetCurrentDirectory()
功能。在我获得当前目录路径之后,我需要向上移动两个目录并获得路径变量的这种胜利的路径。
知道我该怎么做吗?
答案 0 :(得分:5)
你的意思是两个目录?如果您向上移动,请使用Directory.GetParent。你不能任意向下移动,你需要知道你要去哪里。
答案 1 :(得分:2)
假设你意味着向上移动,而不是向下移动:
var x = new DirectoryInfo(Directory.GetCurrentDirectory());
var result = x.Parent.Parent;
您现在可以获取该目录的所有数据,如:
var fullName = result.FullName;
答案 2 :(得分:1)
如果您确实希望Directory.GetCurrentDirectory()
方法返回不同的目录,则需要使用匹配的Directory.SetCurrentDirectory()
方法来更改应用程序的工作目录。
http://msdn.microsoft.com/en-us/library/system.io.directory.setcurrentdirectory.aspx
如果您想要向下移动,可以使用Directory.GetDirectories()
方法查看当前路径中的所有文件夹,然后使用Directory.SetDirectory()
方法将其设置为其中一个。再次重复以获得“两个目录”。 Sans错误处理(假设您每次都想要第一个目录):
var directory = Directory.GetCurrentDirectory();
var directories = Directory.GetDirectories(directory);
directory = directories.First();
directories = Directory.GetDirectories(directory);
directory = directories.First();
如果您实际上意味着 UP 而不是关闭,那么就像其他人所说的那样,使用Directory.GetParent()
方法获取当前目录的父级...两次。