ASP.NET之文件上传

文件上传的基本思路:

      修改配置文件--->判断用户是否选择文件---->判断文件大小是否符合要求----->判断文件扩展名是否符合要求,并修改文件符合要求的文件名------>获取服务器文件夹路径----->开始上传文件

首先配置文件

  <appSettings >
     <add key="PhysicsObjectLength" value="30720"/>
   </appSettings>

    <system.web>

      <httpRuntime maxRequestLength="40960"></httpRuntime>
      <compilation debug="true" targetFramework="4.6.1"/>
     
    </system.web>

aspx网页代码:

<div>
            请选择要上传的文件:<asp:FileUpload ID="ful" runat="server" />
            <asp:Button ID="btnUpload" runat="server" Text="开始上传" OnClick="btnUpload_Click" />
            <asp:Literal ID="ltaMsg" runat="server"></asp:Literal>
        </div>

cs里相关代码

 protected void btnUpload_Click(object sender, EventArgs e)
    {
        //判断文件是否存在
        if (!this.ful.HasFile) return;
        //获取文件大小,判断是否符合设置要求(变成MB)
        double fileLength = this.ful.FileContent.Length / (1024.0 * 1024.0);
        //获取配置文件中上传文件大小的限制
        double limitedLength = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings["PhysicsObjectLength"]);
        limitedLength = limitedLength / 1024.0;//转换成MB单位
        //判断实际文件大小是否符合要求
        if(fileLength >limitedLength)
        {
            //this.ltaMsg.Text = "上传文件大小不能超过" + limitedLength + "MB";
            this.ltaMsg.Text = "<script type='text/javascript'>alert('上传文件最大不能超过"+limitedLength +"M')</script>";
            return;
        }
        //获取文件名,判断文件扩展是否符合要求
        string fileName = this.ful.FileName;
        //判断文件名是否是EXE文件
        if(fileName.Substring (fileName .LastIndexOf (".")).ToLower() == ".exe")
        {
            this.ltaMsg.Text = "<sript type='text/javascript>alert('上传文件不能是exe文件')</script>";
            return;
        }
        //修改文件名
        fileName = DateTime.Now.ToString("yyyyMMddhhssms") + "_" + fileName;
        //获取服务器文件夹路径
        string path = Server.MapPath("~/UploadFiles");
        //上传文件
        try
        {
            this.ful.SaveAs(path + "/" + fileName);
            this.ltaMsg.Text = "<sript type='text/javascript>alert('文件上传成功')</script>";
        }
        catch (Exception ex)
        {
            this.ltaMsg.Text = "<sript type='text/javascript>alert('文件上传失败')</script>"+ex.Message ;
           
        }
    }

:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值