Asp.net(C#)多文件上传

FileUp.aspx 页面

 1<%@ Page language="c#" Codebehind="FileUp.aspx.cs" AutoEventWireup="false" Inherits="TestCenter.FileUp" %> 
 2<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > 
 3<HTML> 
 4  <HEAD> 
 5    <title>多文件上传</title> 
 6    <script language="JavaScript"> 
 7    function addFile() 
 8    
 9     var str = '<INPUT type="file" size="50" NAME="File">
10     document.getElementById('MyFile').insertAdjacentHTML("beforeEnd",str) 
11    }
 
12    
</script> 
13  </HEAD> 
14  <body> 
15    <form id="form1" method="post" runat="server" enctype="multipart/form-data"> 
16      <div align="center"> 
17        <h3>多文件上传</h3> 
18        <id="MyFile"><INPUT type="file" size="50" NAME="File"></P> 
19        <P> 
20          <input type="button" value="增加(Add)" onclick="addFile()"> 
21          <input onclick="this.form.reset()" type="button" value="重置(ReSet)"> 
22          <asp:Button Runat="server" Text="开始上传" ID="UploadButton"></asp:Button> 
23        </P> 
24        <P> 
25        <asp:Label id="strStatus" runat="server" Font-Names="宋体" Font-Bold="True" Font-Size="9pt"  
26          Width="500px" BorderStyle="None" BorderColor="White"></asp:Label> 
27        </P>  
28      </div> 
29    </form> 
30  </body> 
31</HTML> 
32


//****************************************************************
//////FileUp.aspx.cs

 1using System; 
 2using System.Collections; 
 3using System.ComponentModel; 
 4using System.Data; 
 5using System.Drawing; 
 6using System.Web; 
 7using System.Web.SessionState; 
 8using System.Web.UI; 
 9using System.Web.UI.WebControls; 
10using System.Web.UI.HtmlControls; 
11
12namespace TestCenter
13
14  /// <summary>   
15  /// 实现多文件上传 
16  /// </summary> 

17  public class FileUp: System.Web.UI.Page 
18  
19    protected System.Web.UI.WebControls.Button UploadButton; 
20    protected System.Web.UI.WebControls.Label strStatus; 
21
22    private void Page_Load(object sender, System.EventArgs e) 
23    
24            if (this.IsPostBack) this.SaveImages(); 
25    }
 
26
27    private Boolean SaveImages() 
28    
29      ///'遍历File表单元素 
30      HttpFileCollection files  = HttpContext.Current.Request.Files; 
31
32      /// '状态信息 
33      System.Text.StringBuilder strMsg = new System.Text.StringBuilder(); 
34      strMsg.Append("上传的文件分别是:<hr color=red>"); 
35      try 
36      
37        for(int iFile = 0; iFile < files.Count; iFile++
38        
39          ///'检查文件扩展名字 
40          HttpPostedFile postedFile = files[iFile]; 
41          string fileName, fileExtension; 
42          fileName = System.IO.Path.GetFileName(postedFile.FileName); 
43          if (fileName != ""
44          
45            fileExtension = System.IO.Path.GetExtension(fileName); 
46            strMsg.Append("上传的文件类型:" + postedFile.ContentType.ToString() + "<br>"); 
47            strMsg.Append("客户端文件地址:" + postedFile.FileName + "<br>"); 
48            strMsg.Append("上传文件的文件名:" + fileName + "<br>"); 
49            strMsg.Append("上传文件的扩展名:" + fileExtension + "<br><hr>"); 
50            ///'可根据扩展名字的不同保存到不同的文件夹 
51            ///注意:可能要修改你的文件夹的匿名写入权限。 

52            postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("images/"+ fileName); 
53          }
 
54        }
 
55        strStatus.Text = strMsg.ToString(); 
56        return true
57      }
 
58      catch(System.Exception Ex) 
59      
60        strStatus.Text = Ex.Message; 
61        return false
62      }
 
63    }
 
64
posted @ 2006-03-01 22:49  Hermes.Liu  阅读(880)  评论(0编辑  收藏  举报