ASP.NET总结C#中7种获取当前路径的方法
1. system.diagnostics.process.getcurrentprocess().mainmodule.filename
-获取模块的完整路径。
2. system.environment.currentdirectory
-获取和设置当前目录(该进程从中启动的目录)的完全限定目录。
3. system.io.directory.getcurrentdirectory()
-获取应用程序的当前工作目录。这个不一定是程序从中启动的目录啊,有可能程序放在c:\www里,这个函数有可能返回c:\documents and settings\zyb\,或者c:\program files\adobe\,有时不一定返回什么东东,我也搞不懂了。
4. system.appdomain.currentdomain.basedirectory
-获取程序的基目录。
5. system.appdomain.currentdomain.setupinformation.applicationbase
-获取和设置包括该应用程序的目录的名称。
6. system.windows.forms.application.startuppath
-获取启动了应用程序的可执行文件的路径。效果和2、5一样。只是5返回的字符串后面多了一个"\"而已
7. system.windows.forms.application.executablepath
-获取启动了应用程序的可执行文件的路径及文件名,效果和1一样。
//获取模块的完整路径。 string path1 = system.diagnostics.process.getcurrentprocess().mainmodule.filename; //获取和设置当前目录(该进程从中启动的目录)的完全限定目录 string path2 = system.environment.currentdirectory; //获取应用程序的当前工作目录 string path3 = system.io.directory.getcurrentdirectory(); //获取程序的基目录 string path4 = system.appdomain.currentdomain.basedirectory; //获取和设置包括该应用程序的目录的名称 string path5 = system.appdomain.currentdomain.setupinformation.applicationbase; //获取启动了应用程序的可执行文件的路径 string path6 = system.windows.forms.application.startuppath; //获取启动了应用程序的可执行文件的路径及文件名 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();
/* 输出结果
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
*/