在目录结构中上下移动以访问文件

本文关键字:移动 访问 文件 上下 结构 | 更新日期: 2023-09-27 18:30:27

一个看似简单的问题变得相当困难。我想向上移动两个目录,然后向下移动以访问文件。这:

var currentDir = DirectoryInfo(Directory.GetCurrentDirectory())

给我当前目录。然后我可以做:

currentDir.Parent

这使我向上移动,但现在我得到了相对路径。我怎样才能避免使用它来使用:

Path.Combine

或者类似的东西然后下去?

在目录结构中上下移动以访问文件

由于currentDir是一个DirectoryInfo currentDir.Parent因此为您提供了父目录的DirectoryInfo,包括DirectoryInfo的完整路径和所有其他信息。

你必须使用它FullName属性:

string fullPath = parent.FullName;

如果要查找文件:

FileInfo[] files = currentDir.Parent.Parent.GetFiles("FileName.txt", System.IO.SearchOption.TopDirectoryOnly);

如下所示的内容将起作用。

DirectoryInfo currentDir = new DirectoryInfo(Directory.GetCurrentDirectory());
FileInfo myFile = new FileInfo(currentDir.Parent.Parent.FullName + "''test''myFile.txt");