FileUpload控制元件學習
使用者選擇要上載的檔案後,FileUpload 控制元件不會自動將該檔案儲存到伺服器。您必須顯式提供一個控制元件(例如,可以提供一個命令按鈕,當使用者單擊它時即可上載檔案。)
該控制元件最主要的一個方法是SaveAs(string fileName),即將要從客戶端上指定的檔案上傳到web伺服器上指定的目錄下面。
要注意的是:
1.在上傳檔案前,應先驗證該FileUpload控制元件是否真正包含了計算機上的某個檔案,這個可以通過控制元件的HasFile屬性(bool值)達到驗證的目的。即:HasFile 返回 true,則表明存在該檔案,那麼就可以呼叫 SaveAs 方法,儲存檔案到web伺服器上。否則則向使用者顯示提示訊息,指明該控制元件不包含檔案(在測試中我們發現,就算控制元件中指明路徑,但是這個路徑本身不包括這個檔案時,返回值也為False)
2.如果我們要訪問從客戶端上傳來的檔案本身的資訊,可以通過FileUpload控制元件的PostedFile屬性,該屬性返回一個HttpPostedFile物件,利用該物件,就可以獲取檔案的大小(ContentLength屬性)、檔案的型別(ContentType屬性)、客戶端檔案的完整路徑(FileName).
下面是用FileUpload控制元件上傳檔案的一個簡單示例:
protected void Button1_Click(object sender, EventArgs e)
{
bool allowUpload = false;
string[] extensionType ={ ".jpg", ".bmp", ".gif" };
if (this.FileUpload1.HasFile)
{
//利用Path.GetExtension取得副檔名
string fileExtension = Path.GetExtension(this.FileUpload1.FileName).ToLower();
foreach (string var in extensionType)
{
if (fileExtension == var)
{
allowUpload = true;
break;
}
}
if (allowUpload)
{
string webPath = Server.MapPath("~" + "/上傳的檔案/");//注意:Sevver.MapPath("~")指明“根目錄”
this.FileUpload1.SaveAs(webPath + this.FileUpload1.FileName);
HttpPostedFile fileInfo = this.FileUpload1.PostedFile;
Label1.Text = "檔案上傳成功!
檔案大小為:"+fileInfo.ContentLength +"位元組
檔案型別為:"+fileInfo.ContentType +"
檔案路徑為:"+fileInfo.FileName;
}
else
{
this.Label1.Text = "檔案型別不對,請上傳檔案字尾為.jpg或.bmp或.gif等型別的圖片檔案";
}
}
else
{
this.Label1.Text = "檔案不存在,請指定路徑!";
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-541443/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- fileupload-基於pikachu的學習
- C#自定義FileUpload控制元件C#控制元件
- asp.net 使用FileUpload控制元件上傳並顯示圖片ASP.NET控制元件
- Apple Watch學習之路 基礎控制元件學習APP控制元件
- asp.net2.0 上傳圖片(FileUpload控制元件) 並生成縮圖ASP.NET控制元件
- Devexpress 控制元件學習記錄(一:BarManager 控制元件、XtraTabbedMdiManager 控制元件)devExpress控制元件
- 【WPF】 OxyPlot圖表控制元件學習控制元件
- ajax 學習筆記 updatepannel控制元件筆記控制元件
- ASP.NET動態網站開發培訓-10.FileUpload控制元件ASP.NET網站控制元件
- 讓ASP.NET的FileUpload控制元件支援瀏覽自動上傳功能ASP.NET控制元件
- tkinter學習系列(四)之Button 控制元件控制元件
- DevExpress控制元件學習總結 zdevExpress控制元件
- 安卓開發學習-按鈕控制元件安卓控制元件
- HTML DOM FileUpload 物件HTML物件
- iOS學習筆記——基礎控制元件(上)iOS筆記控制元件
- <react學習筆記(9)>表單控制元件React筆記控制元件
- Flutter學習指南:UI佈局和控制元件FlutterUI控制元件
- Cesium介面學習以及隱藏介面控制元件控制元件
- Material Design 相容性控制元件學習Material Design控制元件
- 變相激發FileUpload事件事件
- VBA 控制元件學習筆記(下拉選單實現)控制元件筆記
- VBA 控制元件學習筆記(按鈕點選事件)控制元件筆記事件
- 值得深入學習的控制元件-RecyclerView(原始碼解析篇)控制元件View原始碼
- SSIS 學習之旅 FTP檔案傳輸-FTP控制元件FTP控制元件
- IOS 學習筆記(7) 控制元件 分隔欄控制元件(UISegmentControl)的使用方法iOS筆記控制元件UI
- 學習筆記| AS入門(二) 簡單控制元件篇(上)筆記控制元件
- 學習筆記|AS入門(五) 高階控制元件篇(下)筆記控制元件
- 學習筆記|AS入門(五) 高階控制元件篇(中)筆記控制元件
- 學習筆記|AS入門(五) 高階控制元件篇(上)筆記控制元件
- 學習筆記|AS入門(二) 簡單控制元件篇(下)筆記控制元件
- 學習筆記|AS入門(二) 簡單控制元件篇(上)筆記控制元件
- 控制元件開發學習筆記(一)——ToolboxData含義控制元件筆記
- Silverlight學習筆記:XAML和控制元件模型筆記控制元件模型
- ESP32 開發筆記(四)LVGL控制元件學習 3 Button 按鈕控制元件筆記控制元件
- 第一次使用jQuery fileuploadjQuery
- ESP32 開發筆記(四)LVGL控制元件學習 15 Keyboard 鍵盤控制元件 X筆記控制元件
- IOS 學習筆記(6) 控制元件 文字域(UITextField)的使用方法iOS筆記控制元件UI
- 7.1、使用Commons Fileupload上傳檔案