利用.net里面的FileUpload控件上传图片到服务器, 我的Default.aspx文件里面除了添加这个控件外还用了一个Button控件,
用以实现上传。基本步骤如下:
1.首先是判断FileUpload控件的HasFile属性是否为true,如果为true,表示已经确认上传文件存在。
2.判断文件类型是否符合要求,符合就调用SaveAs(string fileName)方法实现上传。
protected void Button1_Click(object sender, EventArgs e)
{
bool filesValid = false;
//文件上传路径
string filePath = this.FileUpload1.PostedFile.FileName;
//获取文件名称
string fileName = filePath.Substring(filePath.LastIndexOf("\\")+1);
//获取文件大小
//string fileSize = Convert.ToString(FileUpload1.PostedFile.ContentLength);
//获取文件扩展名
//string fileExtend = filePath.Substring(filePath.LastIndexOf(".")+1);
//获取文件类型
//string fileType = FileUpload1.PostedFile.ContentType;
if(this.FileUpload1.HasFile)
{
//转换成小写形式
string fileExtension = System.IO.Path.GetExtension(this.FileUpload1.FileName).ToLower();
string[] restricyExtension = {".gif",".jpg",".bmp",".png"};
//判断文件是否符合要求
for (int i = 0; i < restricyExtension.Length;i++ )
{
if(fileExtension==restricyExtension[i])
{
filesValid = true;
}
}
//如果文件符合要求,调用SaveAS()方法上传,并显示相关信息
if(filesValid==true)
{
//判断是否有该路径
string wantPath = Server.MapPath("./images/photo/");
if (!Directory.Exists(wantPath))
{ //如果不存在就创建
Directory.CreateDirectory(wantPath);
this.FileUpload1.SaveAs(Server.MapPath("./images/photo/") + fileName);
Response.Write("<script>alert('ok')</script>");
}
else
{
this.FileUpload1.SaveAs(Server.MapPath("./images/photo/") +
fileName);
Response.Write("<script>alert('ok')</script>");
}
}
}
}
这个只是非常简单的实现,多加研究会发现更多的用处。