放一个HtmlInputFile
HttpFileCollection files = HttpContext.Current.Request.Files;
if ( files.Count == 1 )
{
HttpPostedFile postedFile = files[0];
if ( postedFile.FileName != "" )
{
string fileName = Path.GetExtension(postedFile.FileName);
string savePath = "/upload/" + fileName;
try
{
postedFile.SaveAs(savePath);
}
catch
{
this.ShowMessage("上传照片失败!");
throw;
}
}
}
HttpFileCollection files = HttpContext.Current.Request.Files;
if ( files.Count == 1 )
{
HttpPostedFile postedFile = files[0];
if ( postedFile.FileName != "" )
{
string fileName = Path.GetExtension(postedFile.FileName);
string savePath = "/upload/" + fileName;
try
{
postedFile.SaveAs(savePath);
}
catch
{
this.ShowMessage("上传照片失败!");
throw;
}
}
}
<form id="WebForm3" method="post" encType="multipart/form-data" runat="server" >二. 判断是否有文件上传了:
当用户没有选择任何要上传的文件,即HtmlInputFile控件中的文本框为空时点击了上传按钮后,在服务端得到的File1.PostedFile对象不是null,而是有对象的,所以不能用(File1.PostedFile == null)来判断是否上传了文件,用(File1.PostedFile.ContentLength != 0)来判断比较好三. 判断上传文件MIMIE类型:
文件上传后可以用File1.PostedFile.ContentType来读取这个文件的MIMIE类型,这个MIMIE类型是系统通过上传文件的后缀名来获得的。四. 保存上传的文件:1. 文件可以通过File1.PostedFile.SaveAs(path) //path是服务器上的物理路径,来保存文件。if(File1.PostedFile.ContentLength != 0){ StringBuilder myStr = new StringBuilder(); myStr.Append("文件名称:" + File1.PostedFile.FileName); myStr.Append("<br>"); myStr.Append("文件类型:" + File1.PostedFile.ContentType); myStr.Append("<br>"); myStr.Append("文件长度:" + File1.PostedFile.ContentLength.ToString()); myStr.Append("<br>"); string path = Server.MapPath("./"); //当前路径 string fileName = File1.PostedFile.FileName.Substring(File1.PostedFile.FileName.LastIndexOf('\\')+1); path += fileName; if(File.Exists(path) == true) { Label1.Text = "服务器上已经有了你正在上传的文件:" + fileName; return; } File1.PostedFile.SaveAs(path); myStr.Append("保存完毕!"); myStr.Append("<br>"); Label1.Text = myStr.ToString();}else{ Label1.Text = "你没有选择要上载的文件或者上传的文件长度为0!";}