.NET下获取应用程序目录的一些方法

  今天在Console Application下搞了一个小功能,期间需要获取当前应用程序的根目录,试了很多方式,都不能直接获取到,没有像Server.MapPath()这类的方法来方便地使用。

  下面列举出一些获取一般目录的方法:  

 1 // 获取程序的基目录,结尾包含\
2 var a = AppDomain.CurrentDomain.BaseDirectory;
3 Console.WriteLine(a);
4 // 获取和设置包括该应用程序的目录的名称,与上一个一样
5 var b = AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
6 Console.WriteLine(b);
7
8 // 获取启动了应用程序的可执行文件的路径及文件名
9 var c = Application.ExecutablePath;
10 Console.WriteLine(c);
11 // 获取模块的完整路径,与上一个一样
12 var d = Process.GetCurrentProcess().MainModule.FileName;
13 Console.WriteLine(d);
14
15 // 获取和设置当前目录(该进程从中启动的目录)的完全限定目录
16 var e = Environment.CurrentDirectory;
17 Console.WriteLine(e);
18 // 获取应用程序的当前工作目录
19 var f = Directory.GetCurrentDirectory();
20 Console.WriteLine(f);
21 // 获取启动了应用程序的可执行文件的路径
22 var g = Application.StartupPath;
23 Console.WriteLine(g);

  以上的方法获取的都是\bin\Debug之类的目录。

  如果要获取根目录,则可使用Directory下的方法:

1 //获取应用程序根目录
2 var p = Directory.GetParent(Environment.CurrentDirectory).Parent.FullName;
3 Console.WriteLine(p);

  我还没有找到一个更简单、方便的方法来获取根目录,园子里有知道的,可以讲下,谢了!

  虽然这没啥深度,但做个记录,可方便大家查询……

转载于:https://www.cnblogs.com/nh022/archive/2012/03/15/2398803.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值