//方法一:取到当前程序可运行目录的地址
string s1= Directory.GetCurrentDirectory();
//方法二:取到当前程序可运行目录的地址
string s2 = AppDomain.CurrentDomain.BaseDirectory;
string s3 = Application.StartupPath;
//上面的三个方法取到的路径是一样的,都是当前应用程序的路径,
//只是第二个多了一个斜杠\
string s4=Directory.GetParent(s3).Parent.Parent.ToString();
//这段代码让我想起了js中也有这样的取到字符串的写法
//取到当前程序可执行程序exe的地址
string s5 = this.GetType().Assembly.Location;
如何在C#中获取文件名与文件路径
string fullPath = @"WebSite1Default.aspx";
string filename = System.IO.Path.GetFileName(fullPath);//文件名 “Default.aspx”
string extension = System.IO.Path.GetExtension(fullPath);//扩展名 “.aspx”
string fileNameWithoutExtension = System.IO.Path.GetFileNameWithoutExtension(fullPath);// 没有扩展名的文件名 “Default”
还有的就是用Substring截取
strFilePaht.Substring(path.LastIndexOf("") + 1, path.Length - 1 - path.LastIndexOf(""));
strFilePaht.Substring(path.LastIndexOf("."), path.Length - path.LastIndexOf("."));
//获取当前进程的完整路径,包含文件名(进程名)。
string str = this.GetType().Assembly.Location;
result: X:xxxxxxxxx.exe (.exe文件所在的目录+.exe文件名)
//获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名)。
string str = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
result: X:xxxxxxxxx.exe (.exe文件所在的目录+.exe文件名)
//获取和设置当前目录(即该进程从中启动的目录)的完全限定路径。
string str = System.Environment.CurrentDirectory;
result: X:xxxxxx (.exe文件所在的目录)
//获取当前 Thread 的当前应用程序域的基目录,它由程序集冲突解决程序用来探测程序集。
string str = System.AppDomain.CurrentDomain.BaseDirectory;
result: X:xxxxxx (.exe文件所在的目录+"")
//获取和设置包含该应用程序的目录的名称。
string str = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
result: X:xxxxxx (.exe文件所在的目录+"")
//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。
string str = System.Windows.Forms.Application.StartupPath;
result: X:xxxxxx (.exe文件所在的目录)
//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。
string str = System.Windows.Forms.Application.ExecutablePath;
result: X:xxxxxxxxx.exe (.exe文件所在的目录+.exe文件名)
//获取应用程序的当前工作目录(不可靠)。
string str = System.IO.Directory.GetCurrentDirectory();
result: X:xxxxxx (.exe文件所在的目录)