【问题标题】:How to get path to the projects directory如何获取项目目录的路径
【发布时间】:2014-01-08 20:40:44
【问题描述】:

例如,如果我想获取项目目录中的文件数。 在Java 我会写:

int numberOfFiles = new File(".").listFiles().length;

但我不知道如何在 .NET 中获取项目目录的路径。如何在 C# 中实现相同的目标?

【问题讨论】:

标签: c# directory


【解决方案1】:

很简单

var path = Path.GetDirectoryName(Application.ExecutablePath);
var files = Directory.GetFiles(path);

【讨论】:

    【解决方案2】:

    它很接近 - 使用:

    int numberOfFiles = Directory.GetFiles(".").Length
    

    【讨论】:

    • 与 John Koerner 解决方案相比(在结果、有效性方面)有什么不同吗?
    • 结果应该是一样的。您必须尝试两种方法,看看 性能 是否不同。
    • 你更喜欢哪一个?我想知道参考解决方案-->纯粹主义者的解决方案。
    • 现在我想一想 - 当前目录可能与可执行路径不同,所以结果可能 不同,例如,您使用设置不同启动目录的快捷方式启动应用程序。
    • 如果我通过桌面快捷方式运行应用程序,executable pathcurrent directory 将指向“真实”应用程序目录?
    【解决方案3】:

    您可以使用Application.ExecutablePath 获取可执行文件的路径,然后从那里获取目录。一旦有了目录,就很容易获得文件数:

    var executingDir = System.IO.Path.GetDirectoryName(Application.ExecutablePath);
    var numFiles = System.IO.Directory.GetFiles(executingDir).Count();
    Console.WriteLine(numFiles);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-02
      • 2019-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多