C# 我的应用程序路径在哪里?

C# 我的应用程序路径在哪里?,c#,class,path,console,console-application,C#,Class,Path,Console,Console Application,我在visual studio项目中添加了一个文件夹“myFolder”,如何从当前位置执行和读取该文件 .\您可以使用System.AppDomain.CurrentDomain.BaseDirectory获取包含二进制文件的目录。从那里你可以导航到你的子目录 确保在属性窗口中为添加到项目的文件夹中的文件选择“复制到输出目录”,这将确保在编译应用程序时将文件复制到bin目录。使用解决方案资源管理器创建的文件夹不会复制到输出目录(可执行文件所在的目录)默认情况下,除非已添加到该目录中的项目的“复

我在visual studio项目中添加了一个文件夹“myFolder”,如何从当前位置执行和读取该文件


.\您可以使用
System.AppDomain.CurrentDomain.BaseDirectory
获取包含二进制文件的目录。从那里你可以导航到你的子目录


确保在属性窗口中为添加到项目的文件夹中的文件选择“复制到输出目录”,这将确保在编译应用程序时将文件复制到bin目录。

使用解决方案资源管理器创建的文件夹不会复制到输出目录(可执行文件所在的目录)默认情况下,除非已添加到该目录中的项目的“复制到输出目录”值设置为“不复制”以外的值,否则如果您所做的只是使用解决方案资源管理器创建一个空目录,则该目录可能不存在于输出路径中

这段代码将在应用程序的输出路径上创建一个目录

 var directoryPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "YourDirectoryName");
        if (!Directory.Exists(directoryPath))
            Directory.CreateDirectory(directoryPath);
请注意,此代码中不包括sicnificant异常处理,I/O是可以执行的更容易发生异常的活动之一,因此请确保存在足够的错误处理

如果希望在构建过程中创建目录,可以将
mkdir
作为外部构建命令运行,或者使用

    FileStream fs = File.OpenRead(@".\myFolder\output.pdf");
 var directoryPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "YourDirectoryName");
        if (!Directory.Exists(directoryPath))
            Directory.CreateDirectory(directoryPath);