hongyuniu

Whatever You Do, Do Your Best !

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

  不管是BS还是CS都经常要用到文件上传 以下是ASP.NET同时上传多个附件的代码

<%@  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>  


 
代码部分  
 
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
;  
                                   }
  
                       }
  
                       
Web  窗体设计器生成的代码
  
           }
  
}
posted on 2007-07-31 15:34  CsharpFish  阅读(4494)  评论(0编辑  收藏  举报