https://edu.csdn.net/course/detail/30867 /*
般来说,使用FileUpload控件上传文件一般有如下几个步骤:
(1)利用HasFile属性判断是否上传了文件。
(2)在服务器上指定一个物理路径,并检查这个物理路径是否存在,如果不存在先创建
(3)指定上传文件在服务器上的上传路径,利用Save()保存上传的文件,这一步还可以做一些其它检查工作,比如检查上传的文件是否符合要求或文件内容大小是否符合要求
(4)将相对路径或者URL地址保存起来,以便客户访问下载
*/ protected void Button1_Click(object sender, EventArgs e) { if (FileUpload1.HasFile)//是否上传文件 { lblMsg.Text = “有文件”; //有文件,继续操作; //Server.MapPath():获取当前项目的路径;; //DateTime.Now.ToString(参数):参数为需要指定的时间格式; String fileName =Server.MapPath("\photo\")+DateTime.Now.ToString(“yyyyMMddhhmmss”)+ FileUpload1.FileName; //解决问题:文件名相同,后面会把前面的给覆盖掉; //思路:1.随机数;复杂的函数(字符+数字) //2.利用时间、随机数; lblMsg.Text = DateTime.Now.ToString(); //lblMsg.Text += “–>”+fileName; //lblMsg.Text += “====” + FileUpload1.PostedFile.FileName; //利用SaveAs;放到E:,但是你的客户没有E: //FileUpload1.SaveAs(“e:\”+fileName); FileUpload1.SaveAs(fileName); } else { lblMsg.Text = “没有文件”; } } 为了实现上传之后,即时预览图片,在后面增加一个上传按钮,参考代码如下: if (FileUpload1.HasFile) { //有文件就可以上传,并且显示; String fileName =DateTime.Now.ToString(“yyyyMMddhhmmss”) + FileUpload1.FileName; FileUpload1.SaveAs(Server.MapPath("\img\") + fileName); img1.Src = “./img/”+fileName; }
<system.web> <httpRuntime requestValidationMode="2.0" maxRequestLength="3072" ></httpRuntime> <!--单位:KB 3072=3MB 默认是4MB,最大支持2GB--> </system.web> <system.webServer> <security> <requestFiltering> <requestLimits maxAllowedContentLength="2147483648" /> <!--单位:字节B 2147483648=2 GB 默认是4MB,最大支持2GB--> </requestFiltering> </security> </system.webServer>