利用“HtmlInputFile”控制項來完成檔案上傳
form標籤中要設定“enctype="multipart/form-data"”
如:<form id="form1" enctype="multipart/form-data" runat="server">
<input type="file" id="File1" runat="server"/>
//放置一個按鈕
</form>
後台代碼為:
按鈕單擊處理常式為:
//檢查上傳檔案不為空白
if(File1.PostedFile!=null)
{
string nam = File1.PostedFile.FileName ;
//取得檔案名稱(抱括路徑)裡最後一個"."的索引
int i= nam.LastIndexOf(".");
//取得副檔名
string newext =nam.Substring(i);
//這裡我自動根據日期和檔案大小不同為檔案命名,確保檔案名稱不重複
DateTime now = DateTime.Now;
string newname=now.Ticks.ToString();
//儲存檔案到你所要的目錄,這裡是IIS根目錄下的upload目錄.你可以改變.
//注意: 我這裡用Server.MapPath()取當前檔案的絕對目錄.在asp.net裡""必須用""代替
File1.PostedFile.SaveAs(Server.MapPath("../upload/"+newname+newext));
//得到這個檔案的相關屬性:檔案名稱,檔案類型,檔案大小
//fname.Text=File1.PostedFile.FileName;
//fenc.Text=File1.PostedFile.ContentType ; 形如“image/jpeg”,"image/gif"等形式
//fsize.Text=File1.PostedFile.ContentLength.ToString();
}
可以利用檔案名稱提取檔案的副檔名來判斷檔案類型。