C#(99):获取应用程序 或Web页面目录的路径

一、Winform获取本程序的路径

1、获取当前目录

返回最后不带“\”的目录:如D:\Winform\bin\Debug

 

  1. System.Windows.Forms.Application.StartupPath;
  2. System.Environment.CurrentDirectory;
  3. System.IO.Directory.GetCurrentDirectory();

 

返回最后带“\”的目录(AppDomain应用程序域):如D:\Winform\bin\Debug\

 

  1. System.AppDomain.CurrentDomain.BaseDirectory;
  2. System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;

 

2、获取当前文件路径

 

  1. System.Windows.Forms.Application.ExecutablePath;
  2. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
  3. System.Reflection.Assembly.GetExecutingAssembly().CodeBase; //或者System.Reflection.Assembly.GetAssembly(typeof(类名)).CodeBase; 利用反射获取当前程序集的位置
  4. typeof(类名).Assembly.Location;//利用反射

 

回到顶部

二、WebForm获取文件路径

虚拟目录名:WebSite1

指向:E:\mis\tools

本网页:http://localhost/WebSite1/folder/WebForm1.aspx

1、获取虚拟目录

根相对路径:

  1. System.Web.HttpRuntime.AppDomainAppVirtualPath;
  2. Request.ApplicationPath ;

根绝对路径:

  1. AppDomain.CurrentDomain.BaseDirectory;
  2. Request.PhsicalApplicaitonPath; 
  3. Server.MapPath(“~”) \\ Server.MapPath("/WebSite1")

2、获取文件路径

当前文件相对路径、绝对路径

  1. Request.Path      --相对路径 /WebSite1/folder/WebForm1.aspx
  2. Request.PhsicalPath      --绝对路径 E:\mis\tools\folder\WebForm1.aspx
  3. Request.AppRelativeCurrentExecutionFilePath      -- ~/folder/WebForm1.aspx

当前目录

  1. Server.MapPath(”.”)或Server.MapPath(””);      --E:\mis\tools\folder
  2. Server.MapPath(”./1.jpg”)或Server.MapPath(”1.jpg”);     --E:\mis\tools\folder\1.jpg

上一目录

  1. Server.MapPath(”..”)     -- E:\mis\tools
  2. Server.MapPath(”../1.jpg”) --(””);     --E:\mis\tools\1.jpg 上一目录下的1.JPG文件
  3. Server.MapPath(”../..”)     --C:\inputpub\wwwroot 上一目录的上一目录,到了顶目录wwwroot

根目录

  1. Server.MapPath(”/”) --–C:\inputpub\wwwroot

note:在HTML文件中,用”./”、”../”、”/”表示相对路径和绝对路径。

上一篇:Win10锁屏壁纸位置


下一篇:简单易学的SSM三大框架(Spring+SpringMVC+MyBatis),要求使用Ajax异步技术整合,你学废了么?