0

如果有更有效的方法来执行以下操作:

DirectoryInfo di = new DirectoryInfo(@"c:\");
newFileName = Path.Combine(di.FullName, "MyFile.Txt");

我意识到它只有两行代码,但鉴于我已经有了目录,感觉我应该能够执行以下操作:

newFileName = di.Combine(“MyFile.txt”);

编辑:

应该更清楚 - 我已经有了另一个目的的路径,所以:

DirectoryInfo di = MyFuncReturnsDir();
newFileName = Path.Combine(di.FullName, "MyFile.Txt");
4

2 回答 2

5

为什么不直接做newFileName = Path.Combine(@"c:\", "MyFile.Txt");

正如你所说,你已经有了路径。

于 2010-06-11T14:22:02.490 回答
2

@ho1 是对的。

您还可以编写扩展方法(C# 3.0+):

public static class DirectoryInforExtensions
{
  public static string Combine(this DirectoryInfo directoryInfo, string fileName)
  {
    return Path.Combine(di.FullName, fileName);
  }
}

并通过做来使用它

newFileName = di.Combine("MyFile.txt");
于 2010-06-11T14:25:02.277 回答