C#获取路径
//获取到bin目录的下层路径:bin\Debug\
string aa = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
string cc = System.AppDomain.CurrentDomain.BaseDirectory;
//获取到bin目录:bin\Debug
string dd = System.Environment.CurrentDirectory;
string ee = System.IO.Directory.GetCurrentDirectory();
string ff = System.Windows.Forms.Application.StartupPath;
//获取程序.exe
string bb = System.Windows.Forms.Application.ExecutablePath;
winform使用相对路径读取文件
目录结构如下图所示:
方法一:由于生成的exe文件在bin\debug目录下,可以使用向上查找目录的方式获取要读取的xml文件
FileInfo file = new FileInfo(fileName);
string fullName = file.FullName;
方法二:获取exe文件的路径进行截取,分两次进行,然后拼接文件名,形成全路径
string fullName = Application.StartupPath.Substring(0, Application.StartupPath.LastIndexOf("\\"));
fullName = fullName.Substring(0, fullName.LastIndexOf("\\")) + "\\" + haarXmlPath;
另一种方式:
代码如下:
/// 获取应用程序根路径
/// </summary>
private static string GetApplicationPath()
{
string path = Application.StartupPath;
//string path=AppDomain.CurrentDomain.BaseDirectory; //另一种获取方式
string folderName = String.Empty;
while (folderName.ToLower() != "bin")
{
path = path.Substring(0, path.LastIndexOf("\\"));
folderName = path.Substring(path.LastIndexOf("\\") + 1);
}
return path.Substring(0, path.LastIndexOf("\\") + 1);
}