简单asp.net文件的上传

本文介绍了一个使用ASP.NET实现文件上传的例子,详细讲解了前端FileUpload控件的应用及后端的逻辑处理,包括文件格式验证、大小限制及保存路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、在前台页面需要用到的控件是FileUpload

2、后台的代码,通过代码来理解上传过程

  

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

   
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            List<string> type = new List<string>();      //该集合来存放一些文件的格式,来为下面的类型判断做准备。
            type.Add("image/jpeg");
            type.Add("image/x-png");
                if (FileUpload1.HasFile)    //这个if语句判断的是是否选择了需要上传的文件。如果选择了FileUpload1.HasFile返回true,没有选择返回false。若没有这个判断会报错。
                {
                    if (type.Contains(FileUpload1.PostedFile.ContentType) == false)  //这个判断上传数据的类型。看是否与上面集合里面有的类型相匹配。如果有,允许上传。
            {
                Label1.Text = "上传的图片格式不正确,只支持jpg和png格式的图片";
            }
            else
            {
                    if (FileUpload1.PostedFile.ContentLength <= 20* 1024 * 1024) //该if语句判断上传文件的大小,如果上传的文件太大,可能占用服务器时间过程,可以导致别人无法访问服务器。也会存在安全问题。当然光在这儿限制大小还会出现问题的。程序是先进入Web.config的,当这里的限制条件通不过也是要报错的。所以要在Web.config你面加上这样一段代码: <httpRuntime maxRequestLength="94000"/>;94000是一个可变值,只有上传的文件满足这儿的限制条件,才会进出C#后台的if判断语句。
                    {
                        string str = "F:\\Asp.net\\文件上传\\文件上传
\\image" + FileUpload1.PostedFile.FileName;  
                        FileUpload1.PostedFile.SaveAs(str); //用SaveAs()方法来将选择的文件存到指定的位置。F:\\Asp.net\\文件上传\\文件上传\\image为指定的文件夹,FileUpload1.PostedFile.FileName是存到指定位置后还用原来的文件名。
                        Label1.Text = "上传成功";

                    }
                    else
                    {
                        Label1.Text = "您传的文件过大";
                    }
           }
                }
                else
                {
                    Label1.Text = "请选择要上传的文件";
                }
           
         
          
        }
    }

注意,if语句的顺序很重要,否则会出现提示错误。或者报异常等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值