上传文件

Posted v587yy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了上传文件相关的知识,希望对你有一定的参考价值。

 

文件上传

准备工作 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" />

 

以上是关于上传文件的主要内容,如果未能解决你的问题,请参考以下文章

什么是文件上传漏洞

vue上传文件到后台

JSP-超大文件上传-如何上传文件-大文件上传

php文件上传漏洞代码只允许上传图片

上传文件失败,具体原因:上传的文件超过大小限制,请上传小于 1024k的文件?

delphi10用布署上传文件