想要在asp.net網站上上傳文件就得用到FileUpload,可是這個控制項中“瀏覽”沒法修改,可以使用html中<input type="file" 來解決該問題。 首先頁面不能使用updatepannel,然後需要在頁面form中添加method="post" enctype="multipar
想要在asp.net網站上上傳文件就得用到FileUpload,可是這個控制項中“瀏覽”沒法修改,可以使用html中<input type="file" 來解決該問題。
首先頁面不能使用updatepannel,然後需要在頁面form中添加method="post" enctype="multipart/form-data"
例如
<form id="form1" runat="server" method="post" enctype="multipart/form-data">
然後在頁面需要的位置放此代碼
<input type="text" id="txtPath" name="txt" style="width:250px" runat="server" /> <input type="button" onmousemove="f.style.pixelLeft=event.x-60;f.style.pixelTop=this.offsetTop;" value="Select" size="30" onclick="f.click()" /> <input type="file" id="f" runat="server" onchange="txtPath.value=this.value" accept="image/gif, image/jpeg" name="f" style="position:absolute;filter:alpha(opacity=0);" size="1" hidefocus="true" />
然後在上傳按鈕事件中這樣寫
1 // 獲取客戶端上傳文件 2 HttpPostedFile UserHPF = Request.Files["f"]; 3 //獲取文件夾路徑 4 string FilePath = Server.MapPath("./"); 5 string newfilepath = FilePath + "\\" + System.IO.Path.GetFileName(UserHPF.FileName); 6 //將上傳的文件存儲在指定目錄下 7 UserHPF.SaveAs(newfilepath); 8 9 if (File.Exists(newfilepath)) 10 { 11 WebMessageBox(this,"Import license file successfully!"); 12 }
通過這個方法HttpPostedFile UserHPF = Request.Files["f"];就能取到要上傳的文件了 然後就是常規的SaveAs了。