** 视频课:https://edu.51cto.com/sd/6d2cc**

/* 般来说,使用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; }