详述FileUpload 控件上传单文件

第一步:添加两个Label控件,一个是用于标题显示,一个是用于上传完成消息提示。
第二步:创建一个FileUpload控件到Page页面,注意FileUpload控件本身只提供文件的选举操作,而实际的文件上传功能需要我们创建一个Buttion按钮来触发Click事件。

事件程序如下:(代码已经经过测试)
 1protected void btnUpload click(object sender,EventArgs e) 
 2
 3if(FileUpload1.HasFile) 
 4try 
 5
 6string path=HttpContext.Current.Request.MapPath("~/"); 
 7FileUpload1.SaveAs(path+FileUpload1.FileName); //关键是这句
 8txtMsg.Text="文件名称:"+FileUpload1.PostedFile.FileName+"<br>"
 9txt.Msg.Text+="文件大小:"+FileUpload1.PostedFile.Contentlength+"Bytes<br>"
10txtMsg.Text+="文件类型:"+FielUpload1.PostedFile.ContentTpe+"<br>" ;
11}
 
12catch(Exception ex) 
13
14txtMsg.Text=ex.Message; 
15}
 
16}
 
17else 
18
19txtMsg.Text="您没有选取文件,请从硬盘选取!"
20}
 
21}
 
22

程序说明:
FileUpload1.HasFile用来检查FileUpload是否有指定的文件。
HttpContext.Current.Request.MapPath("~/")获取网站所在磁盘的绝对路径。
FileUpload1.SaveAS()则是将上传文件保存在磁盘上的方法。
FileUpload1.PostedFile.ContentLength获取上传文件的大小,单位是Byte.
FileUpload1.PostedFile.ContentType用于取得上传文件的类型。
需要说明的是Fileopload控件是一个服务器控件,正在精髓之处在于Button的Click事件程序。注意它的默认值是4096KB,如果要上传更大的文件则需要调整maxRequestLength长度
WEB.Config设置如下:
<configuaration>
<system.web>
<httpRuntime maxRequestLength="4096" executionTimeout="120"/>
</system.web>
</configuration>
注意:maxRequestLength是以KB为单位,默认值是4096KB,上传最大是2G.其次是executionTimeout属性是限制上传文件的时间,以秒为单位,默认值是90秒。

posted on 2008-03-24 11:39  CodeShark  阅读(970)  评论(3)    收藏  举报

导航