网上很多上传文件的类,下面是以前的上传函数,弄上来保存了。
protected void Button1_Click(object sender, EventArgs e)
{
if(file_upload.FileName=="")
{
Response.Write("<script language='javascript'>alert('请先选中一个文件再点击上传按钮!');</script>");
return;
}
try
{
/* 为防止上传的文件重名,将上传时间追加到文件名之后
* 获取新文件名开始 */
// 取得上传文件名,注意这样得到的是完整路径+文件名
string strFileName = file_upload.FileName;
int intExt = strFileName.LastIndexOf(".")+1;
//取得文件扩展名
string strExt = strFileName.Substring(intExt).Trim();
if (strExt.ToLower().Equals("gif") || strExt.ToLower().Equals("jpg") || strExt.ToLower().Equals("jpeg") || strExt.ToLower().Equals("bmp"))
{
// 得到最后一个“/”的位置
int nIndex = strFileName.LastIndexOf('//');
// 得到真正的文件名
strFileName = strFileName.Substring(nIndex + 1);
// 得到文件后缀前的“.”所在位置
nIndex = strFileName.LastIndexOf('.');
// 将“文件名.后缀”改为“文件名+时间.后缀”(那个加号表示连接)
strFileName = strFileName.Substring(0, nIndex)
+ DateTime.Now.ToString("yyyyMMddHHmmss")
+ strFileName.Substring(nIndex); /* 获取新文件名结束 */
// 将上传文件的虚拟目录映射为服务器绝对路径
string strPath = Server.MapPath("./upfiles/" + strFileName);
// 上传文件
file_upload.PostedFile.SaveAs(strPath);
Session["picpath"] = "./upfiles/" + strFileName;
picpath = strPath;
Response.Write("<script language='javascript'>alert('上传成功!');</script>");
}
else
{
Response.Write("<script language=javascript>alert('文件只能为jpg或者gif!');</script>");
return;
}
}
catch (Exception ex)
{
Response.Write("<script language='javascript'>alert('"+ex.Message.ToString()+"');</script>");
}
}