第十讲:FileUpload控件
课程安排:
使用FileUpload控件选择上传图片
获取网站当前路径(Server.MapPath) 物理路径
使用SaveAs方法上传文件
判断是否选择了要上传的文件(HasFile属性)
能够避免用户上传错误类型文件的程序分析
使用Fileupload控件选择上传图片
工具箱—标准控件—FileUpload文件。并自带一个浏览按钮。
获取网站当前路径的物理路径
Server.MapPath("."); //获取网站根目录的物理路径
使用SaveAs方法上传文件
FileUpload1.SaveAs(Server.MapPath("./Images/" + Guid.NewGuid() + ".jpg"));
Response.Write("上传成功!");
注意:使用SaveAs可以把文件保存到服务器的任意位置。
例:
FileUpload1.SaveAs("c:/pic/11.jpg")); //固定位置
FileUpload1.SaveAs(Server.MapPath("./pic/111.jpg")); //网站根目录下的pic文件夹
FileUpload1.SaveAs(Server.MapPath("./pic/") + FileUpload1.FileName); //使用原文件名
判断是否选择了要上传的文件(HasFile属性)
if (FileUpload1.HasFile)
避免用户上传错误类型文件的程序分析
Boolean fileOK=false;
String path=Server.MapPath("~/UploadedImages/");
if (FileUpload1.Hasfile)
{
string fileExtension = System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
string[] allowedExtensions = {".gif",".png",".jpeg",".jpg"};
for (int i=0;i<allowedExtensions.Length;i++)
{
if (fileExtension == allowedExtensions[i])
{
fileOK = true;
}
}
}
在aspx.cs中的特殊字段 IsPosBack的特殊意义。是否从本页回调还是第一次打开。