FileUpload文件上传控件

1.FileUpload控件的主要功能是向指定目录上传文件。FileUpload控件不会自动上传控件,而需要设置相关的事件处理程序,然后在程序中实现文件上传。

2.FileUpload控件常见的属性

FileBytes:获取上传文件的字节数组;

FileContent:获取指向上传文件的Stream对象;

FileName:获取上传文件在客户端的名称;(仅获取文件名称)

HasFile:获取一个布尔值,用于表示FileUpload控件是否已经包含一个文件;

PostedFile:使用该对象可以获取上传文件的相关属性;(ContentLength上传文件的大小,ContentType文件类型,FileName获得上传文件在客户端的完整路径

3.FileUpload控件常用方法

SaveAs(String filename)-----------参数filename是指保存在服务器中的上传文件的绝对路径,在调用SaveAs方法之前,先判断HasFile属性是否为true

4.使用FileUpload控件上传图片文件

<asp:FileUpload ID="FileUpload1" runat="server" />
        <asp:Button ID="Button1" runat="server" Text="上传" OnClick="Button1_Click" /><br /><br />
        <asp:Image ID="Image1" runat="server" /><br /><br />
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
 1  protected void Button1_Click(object sender, EventArgs e)
 2     {
 3         bool files = false;
 4         if (this.FileUpload1.HasFile)
 5         {
 6             //获取上传文件的后缀
 7             String fileExtension = System.IO.Path.GetExtension(this.FileUpload1.FileName).ToLower();
 8             String[] restrictExtension = { ".gif", ".jpg", ".bmp", ".png" };
 9             //判断文件类型是否符合
10             for (int i = 0; i < restrictExtension.Length; i++)
11             {
12                 if (fileExtension == restrictExtension[1])
13                 {
14                     files = true;
15                 }
16             }
17             //调用SaveAs方法实现上传
18             if (files == true)
19             {
20                 try
21                 {
22                     this.Image1.ImageUrl = "~/image/" + FileUpload1.FileName;
23                     this.FileUpload1.SaveAs(Server.MapPath("~/image/") + FileUpload1.FileName);
24                     this.Label1.Text = "文件上传成功";
25                     this.Label1.Text += "<br/>";
26                     this.Label1.Text += "<li>" + "原文件路径:" + this.FileUpload1.PostedFile.FileName;
27                     this.Label1.Text += "<br/>";
28                     this.Label1.Text += "<li>" + "文件大小:" + this.FileUpload1.PostedFile.ContentLength + "字节";
29                     this.Label1.Text += "<br/>";
30                     this.Label1.Text += "<li>" + "文件类型:" + this.FileUpload1.PostedFile.ContentType;
31                 }
32                 catch
33                 {
34                     this.Label1.Text = "文件上传不成功";
35                 }
36             }
37             else
38             {
39                 this.Label1.Text = "只能够上传后缀为.gif、 .jpg、 .bmp、.png的文件夹";
40             }
41         }
42     }

 *上传大文件主要修改Web.config文件来实现,在文件中添加httpRuntime节,在该节中修改两个参数:maxRequestLength为最大上传容量,executionTimeout为所响应的时间

原文地址:https://www.cnblogs.com/wishjm/p/5765402.html