閱讀450 返回首頁    go 阿裏雲 go 技術社區[雲棲]


ASP.NET上傳多個文件

 上傳多個文件,效果圖如下:

前台代碼和JavaScript腳本:

<mce:script type="text/javascript"><!-- function AddFile() { var strFile='<input name="File1" type="file" /></br>'; document.getElementById("DivFile").insertAdjacentHTML("beforeEnd",strFile); } // --></mce:script> <div > <input type="file" /> </div> <input type="button" value="添加附件" />

後台處理代碼:

  protected void BtnUpFiles_Click(object sender, EventArgs e) { StringBuilder strMessage = new StringBuilder(); //HttpFileCollection: 提供對客戶端上載文件的訪問,並組織這些文件。 HttpFileCollection Files = HttpContext.Current.Request.Files; for (int i = 0; i < Files.Count;i++ ) { //HttpPostedFile: 提供對客戶端已上載的單獨文件的訪問。 HttpPostedFile PostedFile = Files[i]; if (PostedFile.ContentLength>0) { string FileName = PostedFile.FileName; string strExPrentFile = FileName.Substring(FileName.LastIndexOf(".") + 1);//獲取文件後綴名; string[] NoExPrentFile = new string[] { "exe", "asp", "php" }; bool IsUp = true; //過濾文件格式。 for (int j = 0; j < NoExPrentFile.Length; j++) { if (strExPrentFile.Equals(NoExPrentFile[j])) { IsUp = false; } } if (IsUp)//如果格式正確; { //構成文件路徑:(文件名(由時間格式生成)+後綴名) string sFilePath = string.Format("files/{0}.{1}", DateTime.Now.ToString("mmhhddss"), strExPrentFile); PostedFile.SaveAs(Server.MapPath(sFilePath)); strMessage.Append("文件上傳成功!"); strMessage.Append(string.Format("{0}.{1}", DateTime.Now.ToString("mmhhddss"), strExPrentFile)); strMessage.Append("<br />"); strMessage.Append("文件的格式:"); strMessage.Append(strExPrentFile); strMessage.Append("<br />```````````````<br />"); //this.LabMessage.Text = "文件上傳成功!" + "<br />文件名是:" + string.Format("{0}.{1}", DateTime.Now.ToString("mmhhddss"), strExPrentFile) + "<br />文件的格式:" + strExPrentFile; } else { this.LabMessage.Text = string.Format("不允許上傳{0}格式文件", NoExPrentFile); } } else { this.LabMessage.Text = "不能上傳空文件"; } } this.LabMessage.Text = strMessage.ToString(); }

最後更新:2017-04-02 04:00:23

  上一篇:go GridView中刪除一列時,彈出詢問對話框,及選中一行後使該行變背景色。
  下一篇:go 多核時代:並行程序設計探討(6)——多機協作(又叫分布式處理)