asp.net fileupload控件上传图片并预览图片

页面代码:

      

<form id="form1" runat="server">
 <div>
  <asp:FileUpload ID="FileUpload1" runat="server" />
  <asp:Button ID="Button1" runat="server" Text="上传" Width="54px" OnClick="Button1_Click" />
  <asp:Label ID="Label1" runat="server" Text="" Style="color: Red"></asp:Label>
  <asp:Image runat="server" ID="Image1" Style="z-index: 102; left: 20px; position: absolute;
   top: 49px" Width="73px" />
 </div>
 </form>

后台代码:

 

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

namespace Web.File
{
 public partial class WebForm1 : System.Web.UI.Page
 {
  protected void Page_Load(object sender, EventArgs e)
  {

  }
  #region 文件上传
  /// <summary>
  /// 文件上传
  /// </summary>
  protected void Button1_Click(object sender, EventArgs e)
  {
   if (FileUpload1.FileName == "")
   {
    this.Label1.Text = "上传文件不能为空";
    return;
   }

   bool fileIsValid = false;
   //如果确认了上传文件,则判断文件类型是否符合要求 
   if (this.FileUpload1.HasFile)
   {
    //获取上传文件的后缀 
    String fileExtension = System.IO.Path.GetExtension(this.FileUpload1.FileName).ToLower();
    String[] restrictExtension = { ".gif", ".jpg", ".bmp", ".png" };
    //判断文件类型是否符合要求 
    for (int i = 0; i < restrictExtension.Length; i++)
    {
     if (fileExtension == restrictExtension[i])
     {
      fileIsValid = true;
     }
     //如果文件类型符合要求,调用SaveAs方法实现上传,并显示相关信息 
     if (fileIsValid == true)
     {
      //上传文件是否大于10M
      if (FileUpload1.PostedFile.ContentLength > (10 * 1024 * 1024))
      {
       this.Label1.Text = "上传文件过大";
       return;
      }
      try
      {
       this.Image1.ImageUrl = "~/File/" + FileUpload1.FileName;
       this.FileUpload1.SaveAs(Server.MapPath("~/File/") + FileUpload1.FileName);
       this.Label1.Text = "文件上传成功!";
      }
      catch
      {
       this.Label1.Text = "文件上传失败!";
      }
      finally
      {

      }
     }
     else
     {
      this.Label1.Text = "只能够上传后缀为.gif,.jpg,.bmp,.png的文件";
     }
    }
   }
  }
  #endregion
 }
}

  Web.config 配置:

<!--因为FileUpload 控件上传最大为4M,如果要上传更大文件,改下maxRequestLength的大小-->
<configuration>
 <system.web>
  <compilation debug="true" targetFramework="4.0" />
  <httpRuntime requestValidationMode="2.0" maxRequestLength="10485760" executionTimeout="3600" appRequestQueueLimit="10000"/>
 </system.web>
</configuration>

 

posted @ 2016-08-11 22:22  net开发人员  阅读(5846)  评论(1编辑  收藏  举报