ASP.NET總結(jié)C#中7種獲取當前路徑的方法
1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName
-獲取模塊的完整路徑。
2. System.Environment.CurrentDirectory
-獲取和設(shè)置當前目錄(該進程從中啟動的目錄)的完全限定目錄。
3. System.IO.Directory.GetCurrentDirectory()
-獲取應(yīng)用程序的當前工作目錄。這個不一定是程序從中啟動的目錄啊,有可能程序放在C:\www里,這個函數(shù)有可能返回C:\Documents and Settings\ZYB\,或者C:\Program Files\Adobe\,有時不一定返回什么東東,我也搞不懂了。
4. System.AppDomain.CurrentDomain.BaseDirectory
-獲取程序的基目錄。
5. System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase
-獲取和設(shè)置包括該應(yīng)用程序的目錄的名稱。
6. System.Windows.Forms.Application.StartupPath
-獲取啟動了應(yīng)用程序的可執(zhí)行文件的路徑。效果和2、5一樣。只是5返回的字符串后面多了一個"\"而已
7. System.Windows.Forms.Application.ExecutablePath
-獲取啟動了應(yīng)用程序的可執(zhí)行文件的路徑及文件名,效果和1一樣。
//獲取模塊的完整路徑。 string path1 = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName; //獲取和設(shè)置當前目錄(該進程從中啟動的目錄)的完全限定目錄 string path2 = System.Environment.CurrentDirectory; //獲取應(yīng)用程序的當前工作目錄 string path3 = System.IO.Directory.GetCurrentDirectory(); //獲取程序的基目錄 string path4 = System.AppDomain.CurrentDomain.BaseDirectory; //獲取和設(shè)置包括該應(yīng)用程序的目錄的名稱 string path5 = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase; //獲取啟動了應(yīng)用程序的可執(zhí)行文件的路徑 string path6 = System.Windows.Forms.Application.StartupPath; //獲取啟動了應(yīng)用程序的可執(zhí)行文件的路徑及文件名 string path7 = System.Windows.Forms.Application.ExecutablePath; StringBuilder str=new StringBuilder(); str.AppendLine("System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName:" + path1); str.AppendLine("System.Environment.CurrentDirectory:" + path2); str.AppendLine("System.IO.Directory.GetCurrentDirectory():" + path3); str.AppendLine("System.AppDomain.CurrentDomain.BaseDirectory:" + path4); str.AppendLine("System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase:" + path5); str.AppendLine("System.Windows.Forms.Application.StartupPath:" + path6); str.AppendLine("System.Windows.Forms.Application.ExecutablePath:" + path7); string allPath = str.ToString();
/* 輸出結(jié)果
System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release\XmlAndXsd.vshost.exe
System.Environment.CurrentDirectory:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release
System.IO.Directory.GetCurrentDirectory():D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release
System.AppDomain.CurrentDomain.BaseDirectory:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release\
System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release\
System.Windows.Forms.Application.StartupPath:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release
System.Windows.Forms.Application.ExecutablePath:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release\XmlAndXsd.EXE
*/
相關(guān)文章
Unity游戲開發(fā)中的中介者模式的應(yīng)用與實現(xiàn)
中介者模式是Unity游戲開發(fā)中常用的設(shè)計模式之一,用于減少對象之間的直接耦合,通過引入中介者來協(xié)調(diào)對象之間的交互。通過中介者模式,游戲?qū)ο罂梢愿屿`活地進行交互和協(xié)同工作,降低系統(tǒng)復(fù)雜度,使代碼更加易于維護和擴展2023-05-05