• 2017-5-27 WebForm 文件上传


    文件上传

    准备工作
      1.文件上传的页面
      2.上传文件要保存的文件夹

    1.只要将文件传上来就行
      //1、获取要上传的文件,并且知道要上传到服务器的路径
      string s = "Uploads/aaa.txt";
      //2、生成绝对路径
      string path = Server.MapPath(s);
      //3、上传
      FileUpload1.SaveAs(path);

    问题:文件类型保存不住,名字无法修改,覆盖已上传的文件
      优化1:保留文件原有的名字
      解决:把路径中的文件名替换为控件选中的文件名
      string s = "Uploads/" + FileUpload1.FileName;

    问题:文件名一样,会覆盖,造成文件丢失
      解决:文件名拼接时间和用户名
      string s = "Uploads/" + DateTime.Now.ToString("yyyyMMddhhmmssms") + Request.Cookies["user"].Value + FileUpload1.FileName;

    问题:文件过大,但是还要上传
      解决:不是特别大可以更改请求最大长度,
      如果特别大:C#大文件断点续传
      扩容:在web.config中的<system.web>标记中
      <httpRuntime maxRequestLength="40960"/>

    解决:限制上传文件的大小
      服务端限制:
      if (FileUpload1.PostedFile.ContentLength > 1024 * 1024 * 4)
      {
        Label1.Text = "文件过大!";
        return;
      }

    客户端限制:
      fl.files[0].size > 1024 * 1024 * 4

    问题:限制上传文件的类型
    <asp:FileUpload ID="FileUpload1" accept=".jpg,.jpeg,.png" runat="server" />

    完整的文件上传代码:

    html页面代码和js页面段限制:

    View Code

    后台端代码:

    View Code
  • 相关阅读:
    练习12
    练习11
    练习10(图片题)
    练习9(第九章习题)
    练习8(图片题)
    练习5
    练习4
    对象的赋值与比较
    静态方法
    静态变量
  • 原文地址:https://www.cnblogs.com/changxiaosen/p/6943228.html
Copyright © 2020-2023  润新知