运行相对于当前文件夹的exe

时间:2016-11-27 08:03:00

标签: c#

我的exe文件夹和一个名为data的文件夹。如何访问相对于当前在与C#中的数据文件夹相同的文件夹中打开的exe的数据文件夹?

2 个答案:

答案 0 :(得分:0)

示例文件夹结构:

--ApplicationFolder
       |------> your exe
       |------> Data folder
                 |------> files inside data folder 

从相对路径获取完整路径

string applicationFolderPath =Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);

string dataFolderPath = Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location), "Data");

答案 1 :(得分:0)

假设你有这个heirarchy:

/*  bin
       Debug
          Data
              file.txt
          App.exe
*/

如果您正在运行App.exe并且想要访问file.txt,则可以使用以下方式轻松完成:

string str = System.IO.File.ReadAllText("data\\file.txt");

如果你的目标是跳进heirarchy:

/*  bin
      DataBefore
           file2.txt
      Debug
           App.exe
*/

然后你可以使用:

string str = System.IO.File.ReadAllText("..\\DataBefore\\file2.txt");