我想创建一个转换文件的程序。我希望用户能够将可执行文件放在任何目录,当执行该程序(双击.exe),我希望程序处理当前文件夹内的所有文件,其中exe文件存在。程序如何确定当前正在执行的路径?

我尝试了System.Windows.Forms.Application.StartupPath,但这似乎是错误的方式。

什么好主意吗?


当前回答

如果你想要项目文件夹的路径,你也可以这样做:

        DirectoryInfo di = new DirectoryInfo(".");
       //OR 
        DirectoryInfo di = new DirectoryInfo("../../../");

        Console.WriteLine(di.FullName);

结果: D: \开发\ c# \ ProjectFolder \ ProjectFolder \

其他回答

这段代码以字符串类型创建了应用程序目录的路径

string path="";
path=System.AppContext.BaseDirectory;

祝你好运

1.

Directory.GetCurrentDirectory();

2.

Thread.GetDomain().BaseDirectory

3.

Environment.CurrentDirectory

这对我来说效果最好,特别是在使用dotnet核心单文件发布时。 Path.GetDirectoryName (System.Diagnostics.Process.GetCurrentProcess () .MainModule.FileName)。

如果你想要项目文件夹的路径,你也可以这样做:

        DirectoryInfo di = new DirectoryInfo(".");
       //OR 
        DirectoryInfo di = new DirectoryInfo("../../../");

        Console.WriteLine(di.FullName);

结果: D: \开发\ c# \ ProjectFolder \ ProjectFolder \

使用应用程序。StartupPath在我看来是最好的结果。