1. 程式人生 > >.NET下獲取應用程式目錄的一些方法

.NET下獲取應用程式目錄的一些方法

今天在Console Application下搞了一個小功能,期間需要獲取當前應用程式的根目錄,試了很多方式,都不能直接獲取到,沒有像Server.MapPath()這類的方法來方便地使用。

下面列舉出一些獲取一般目錄的方法: 

// 獲取程式的基目錄,結尾包含\
var a = AppDomain.CurrentDomain.BaseDirectory;
Console.WriteLine(a);
// 獲取和設定包括該應用程式的目錄的名稱,與上一個一樣
var b = AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
Console.WriteLine(b);

// 獲取啟動了應用程式的可執行檔案的路徑及檔名 var c = Application.ExecutablePath; Console.WriteLine(c); // 獲取模組的完整路徑,與上一個一樣 var d = Process.GetCurrentProcess().MainModule.FileName; Console.WriteLine(d); // 獲取和設定當前目錄(該程序從中啟動的目錄)的完全限定目錄 var e = Environment.CurrentDirectory; Console.WriteLine(e); // 獲取應用程式的當前工作目錄 var f = Directory.GetCurrentDirectory(); Console.WriteLine(f);
// 獲取啟動了應用程式的可執行檔案的路徑 var g = Application.StartupPath; Console.WriteLine(g);

以上的方法獲取的都是\bin\Debug之類的目錄。

如果要獲取根目錄,則可使用Directory下的方法:

1 //獲取應用程式根目錄
2 var p = Directory.GetParent(Environment.CurrentDirectory).Parent.FullName;
3 Console.WriteLine(p);

我還沒有找到一個更簡單、方便的方法來獲取根目錄,園子裡有知道的,可以講下,謝了!

雖然這沒啥深度,但做個記錄,可方便大家查詢……