• WebForm上传文件FileUpload


     //Button1的点击事件
    
            //FileUpload1.FileName为所传文件的名字。
            //以DateTime.Now.ToString("yyyyMMddhhmmssms")包括在文件名是为了防止重名,同一时间多人传同一文件的情况发生,造成服务器出错。
            //文件名也可以包括所传者的唯一键 Request.Cookies["username"].values
            //获取相对路径//获取相对路径。
    //upload为在该文件下新建的一个文件夹,跟Default平级
            string path = "upload/" + DateTime.Now.ToString("yyyyMMddhhmmssms") + FileUpload1.FileName; //获取绝对路径,用Server.MapPath()方法 
    string endpath = Server.MapPath(path);
    //限制上传文件的大小。系统默认是4M。这是在C#位置设置限制,还有在JS设置的。
    //FileUpload1.PostedFile.ContentLength为所传文件的大小。
    //1mb=1024kb=(1024*1024)b
    if (FileUpload1.PostedFile.ContentLength > ((1024 * 1024) * 10))
    {
    Label1.Text
    = "文件大小怒鞥超过10Mb";
    return;/不执行后面语句
    }
          //把文件传到绝对路径下
    FileUpload1.SaveAs(endpath);



    注意:在C#端限制所传文件大小不好用。
          原因:如果文件超过了系统最大长度,C#端是限制不住的,会直接将程序崩溃。

    也可以在Web.confight里面设置所传文件的大小。

    方法:在<system.web></system.web>里面加入 <httpRuntime   maxRequestLength="70960"/>。

    //在JS里面设置所传文件的大小
    <script>
        document.getElementById("Button1").onclick = function ()
        {
            var file = document.getElementById("FileUpload1");
            if (file.value.length <= 0)//如果选中选中文件没有文件没有长度,就是没有选中文件
            {
                alert("请选择所传文件");
                return false;//停止操作
            }
            else
            {
                if (file.files[0].size > ((1024 * 1024) * 10))//选中文件的第一个文件的大小大于等于10M
                {
                    alert("文件大小怒鞥超过10Mb");
                    return false;//停止操作
                }
            }
        }
    </script>
    

     如何限制可以选择的文件类型:在FileUpload1里面的属性里添加accept=".jpg,.jpeg,.png",规范为:(.类型后缀,.类型后缀)。

  • 相关阅读:
    nginx rewrite 模块
    nginx 的请求处理流程
    nginx keepalive 长连接
    cglib、orika、spring等bean copy工具性能测试和原理分析
    jackson、fastjson、kryo、protostuff等序列化工具性能对比
    Java源码详解系列(十一)--Spring的使用和源码(共计4篇博客)
    Spring源码系列(四)--spring-aop是如何设计的
    Spring源码系列(三)--spring-aop的基础组件、架构和使用
    JMH--一款由OpenJDK开发的基准测试工具
    MySQL系列文章汇总
  • 原文地址:https://www.cnblogs.com/wwz-wwz/p/5985461.html
Copyright © 2020-2023  润新知