取得控制台應用程序的根目錄方法
1:Environment.CurrentDirectory 取得或設置當前工作目錄的完整限定路徑
2:AppDomain.CurrentDomain.BaseDirectory 獲取基目錄,它由程序集沖突解決程序用來探測程序集
取得WinForm應用程序的根目錄方法
1:Environment.CurrentDirectory.ToString();//獲取或設置當前工作目錄的完全限定路徑
2:Application.StartupPath.ToString();//獲取啟動了應用程序的可執行文件的路徑,不包括可執行文件的名稱
3:Directory.GetCurrentDirectory();//獲取應用程序的當前工作目錄
4:AppDomain.CurrentDomain.BaseDirectory;//獲取基目錄,它由程序集沖突解決程序用來探測程序集
5:AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//獲取或設置包含該應用程序的目錄的名稱
取得web應用程序的根目錄方法
1.HttpContext.Current.Server.MapPath("~/configs/ChannelUsers.xml")
HttpContext.Current返回當前請求的 HttpContext 對象。如此我們就可以直接訪問Request、Response、Session、Application等對象,和Page中訪問等同。
獲取網站根目錄的方法有幾種如:
Server.MapPath(Request.ServerVariables["PATH_INFO"])
Server.MapPath("/")
Server.MapPath("")
Server.MapPath(".")
Server.MapPath("../")
Server.MapPath("..")
Page.Request.ApplicationPath
以上的方法可以在.aspx中訪問,但是如果你在winform文件就不能用。
HttpContext.Current.Server.MapPath();
System.Web.HttpContext.Current.Request.PhysicalApplicationPath在.cs文件中可以用。
但是HttpContext.Current.Server.MapPath();這個獲取的是文件的路徑而不是根目錄。
只有System.Web.HttpContext.Current.Request.PhysicalApplicationPath 這個才是獲取的根目錄,在寫獲取數據庫路徑是應該用這個。
判斷文件夾是否存在,不存在就創建
if (Directory.Exists(Server.MapPath(~/upimg/hufu)) == false)//如果不存在就創建file文件夾{
Directory.CreateDirectory(Server.MapPath(~/upimg/hufu));}
//Directory.Delete(Server.MapPath(~/upimg/hufu), true);//刪除文件夾以及文件夾中的子目錄,文件
//判斷文件的存在
if (File.Exists(Server.MapPath(~/upimg/Data.html))){
Response.Write(Yes);//存在文件}else{
Response.Write(No);
//不存在文件
File.Create(MapPath(~/upimg/Data.html));//創建該文件}
string name = GetFiles.FileName;//獲取已上傳文件的名字
string size = GetFiles.PostedFile.ContentLength.ToString();//獲取已上傳文件的大小
string type = GetFiles.PostedFile.ContentType;//獲取已上傳文件的MIME
string postfix = name.Substring(name.LastIndexOf(.) + 1);//獲取已上傳文件的后綴
string ipath = Server.MapPath(upimg) +\\+ name;//獲取文件的實際路徑
string fpath = Server.MapPath(upfile) + \\ + name;
string dpath = upimg\\ + name;//判斷寫入數據庫的虛擬路徑
ShowPic.Visible = true;//激活
ShowText.Visible = true;//激活
//判斷文件格式
if (name == ) {
Response.Write(<scriptalert('上傳文件不能為空')</script);}else{
if (postfix == jpg || postfix == gif || postfix == bmp || postfix == png){
GetFiles.SaveAs(ipath);
ShowPic.ImageUrl = dpath;
ShowText.Text = 你上傳的圖片名稱是: + name + + 文件大小: + size + KB + + 文件類型: + type + + 存放的實際路徑為: + ipath;}else{
ShowPic.Visible = false;//隱藏圖片
GetFiles.SaveAs(fpath);//由於不是圖片文件,因此轉存在upfile這個文件夾
ShowText.Text = 你上傳的文件名稱是: + name + + 文件大小: + size + KB + + 文件類型: + type + + 存放的實際路徑為: + fpath;}