如何在C#中使用File的相对路径[关闭]

问题描述 投票:1回答:2

我正在制作一个打开其他程序的启动器。程序将位于启动器的同一文件夹或子文件夹中。他们的完整路径对我来说是未知的,因为用户选择保存它们的位置。它可能是光盘C,D,E,D /文件夹/ newfoler54 / sdfsdfsdf / program.exe等。显示如何为此目的使用相对路径

c# relative-path
2个回答
2
投票

相对路径是相对于当前工作目录的,该目录不一定是安装Launcher的目录。

您可以使用:

Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "SomeFile.dat")

获取相对于包含Launcher的目录的路径。


0
投票

你的发射器有自己的路径:

var launcherFullName = System.Reflection.Assembly.GetEntryAssembly().Location;
var launcherPath = System.IO.Path.GetDirectoryName(executeableFullName);

然后组合启动器的路径和其他程序的相对路径:

var absolutePath = System.IO.Path.Combine(launcherPath, relativePath);
Process.Start(abosolutePath);
© www.soinside.com 2019 - 2024. All rights reserved.