关于C#中的“当前目录”的说明

在C#中,我们有很多方式可以获取程序运行的当前目录,最常见的方式如下:

 

   1:  string strPath1 = System.Environment.CurrentDirectory() ;
   2:  string strPath2 = System.IO.Directory.GetCurrentDirectory() ;
   3:  string strPath3 = System.AppDomain.CurrentDomain.BaseDirectory;  //返回当前程序运行目录,包括最后一个"\"符号

 

从表面上看,这三条语句都可以用于获取程序所在的目录的绝对路径,如果程序一开始执行就调用这三条语句,无疑返回的结果都是程序所在目录的绝对路径。

但是,在程序中调用了系统的文件选择框之后,这三条语句的执行结果会完全不同,具体结果如下:

 

语句1和语句2会返回之前所选择的文件所在目录的绝对路径;

语句3仍然返回程序所在目录的绝对路径。

 

因此,如果要获取程序的所在目录的绝对路径,使用语句3更为安全,这点需要注意。

posted @ 2012-11-17 21:01  ChaoSimple  阅读(533)  评论(0编辑  收藏  举报