C# 版本
UpLoad.aspx
<%@ Page language="c#" Codebehind="UpLoad.aspx.cs" AutoEventWireup="false" Inherits="WebPortal.Upload" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" ><HTML><HEAD><title>多檔案上傳</title><script language="JavaScript">function addFile(){var str = '<INPUT type="file" size="50" NAME="File">'document.getElementById('MyFile').insertAdjacentHTML("beforeEnd",str)}</script></HEAD><body><form id="form1" method="post" runat="server" enctype="multipart/form-data"><div align="center"><h3>多檔案上傳</h3><P id="MyFile"><INPUT type="file" size="50" NAME="File"></P><P><input type="button" value="增加(Add)" onclick="addFile()"><input onclick="this.form.reset()" type="button" value="重設(ReSet)"><asp:Button Runat="server" Text="開始上傳" ID="UploadButton"></asp:Button></P><P><asp:Label id="strStatus" runat="server" Font-Names="宋體" Font-Bold="True" Font-Size="9pt"Width="500px" BorderStyle="None" BorderColor="White"></asp:Label></P></div></form></body></HTML>
UpLoad.aspx.cs
using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Drawing;using System.Web;using System.Web.SessionState;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;namespace WebPortal{/// <summary>/// UpLoad 的摘要說明。/// 實現多檔案上傳/// </summary>public class Upload : System.Web.UI.Page{protected System.Web.UI.WebControls.Button UploadButton;protected System.Web.UI.WebControls.Label strStatus;private void Page_Load(object sender, System.EventArgs e){/// 在此處放置使用者代碼以初始化頁面if (this.IsPostBack) this.SaveImages();}private Boolean SaveImages(){///'遍曆File表單元素HttpFileCollection files = HttpContext.Current.Request.Files;/// '狀態資訊System.Text.StringBuilder strMsg = new System.Text.StringBuilder();strMsg.Append("上傳的檔案分別是:<hr color=red>");try{for(int iFile = 0; iFile < files.Count; iFile++){///'檢查副檔名字HttpPostedFile postedFile = files[iFile];string fileName, fileExtension;fileName = System.IO.Path.GetFileName(postedFile.FileName);if (fileName != ""){fileExtension = System.IO.Path.GetExtension(fileName);strMsg.Append("上傳的檔案類型:" + postedFile.ContentType.ToString() + "<br>");strMsg.Append("用戶端檔案地址:" + postedFile.FileName + "<br>");strMsg.Append("上傳檔案的檔案名稱:" + fileName + "<br>");strMsg.Append("上傳檔案的副檔名:" + fileExtension + "<br><hr>");///'可根據副檔名字的不同儲存到不同的檔案夾///注意:可能要修改你的檔案夾的匿名寫入許可權。postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("images/") + fileName);}}strStatus.Text = strMsg.ToString();return true;}catch(System.Exception Ex){strStatus.Text = Ex.Message;return false;}}#region Web Form設計器產生的程式碼override protected void OnInit(EventArgs e){//// CODEGEN: 該調用是 ASP.NET Web Form設計器所必需的。//InitializeComponent();base.OnInit(e);}/// <summary>/// 設計器支援所需的方法 - 不要使用代碼編輯器修改/// 此方法的內容。/// </summary>private void InitializeComponent(){this.ID = "Upload";this.Load += new System.EventHandler(this.Page_Load);}#endregion}}