private void UpFile()
{
if(UpLoadFile.PostedFile.ContentLength>0&&TextBox1.Text.Trim()!="")
{
string fileName=UpLoadFile.PostedFile.FileName.Substring(UpLoadFile.PostedFile.FileName.LastIndexOf("//"),UpLoadFile.PostedFile.FileName.Length-UpLoadFile.PostedFile.FileName.LastIndexOf("//"));//获取上传文件名
string fileTime=DateTime.Now.Year.ToString()+DateTime.Now.Month.ToString()+DateTime.Now.Day.ToString()+DateTime.Now.Hour.ToString()+DateTime.Now.Second.ToString()+DateTime.Now.Minute.ToString()+DateTime.Now.Millisecond.ToString();//获取当前时间字符串
fileName="//"+fileTime+fileName.Substring(fileName.IndexOf("."),fileName.Length-fileName.IndexOf("."));//重新命名上传文件
string ExtendName=fileName.Substring(fileName.LastIndexOf("."),fileName.Length-fileName.LastIndexOf("."));//获取扩展名
if(ExtendName==".asp" || ExtendName=".aspx" || ExtendName=".exe" || ExtendName=".asa" || ExtendName=".asc" || ExtendName=".aspx")//添加要禁止的扩展
{
Response.Write("<script language=javascript>alert('该扩展名不能上传!');</script>");
Response.Redirect("Err.aspx");//转跳错误页面
}
string fileMapPath="//UpLoade//Files"+fileName;//指定上传路径
DBAccess myDB=new DBAccess();
string SelectTBGovMeetingDatum="Select Count(*) from TBAttachments where AttachmentName='"+TextBox1.Text.Trim()+"'";
myDB.DBSetSelect(SelectTBGovMeetingDatum);
myDB.DBOpen();
int flog=Convert.ToInt32(myDB.DBExecuteScalar());//判断数据库中附件名是否和输入的重复
myDB.DBClose();
if (File.Exists(Server.MapPath(Request.ApplicationPath)+"//UpLoads//Files"+fileName)==false && flog==0)//File需要命名空间System.io
{
UpLoadFile.PostedFile.SaveAs(Server.MapPath(Request.ApplicationPath)+"//UpLoads//Files"+fileName);//保存文件到指定位置
string cmdText="Insert into TBAttachments(AttachmentName,AttachmentURL,AttachmentReport,AttachmentReportID) values('"+TextBox1.Text.Trim()+"','"+fileMapPath+"','"+Label2.Text.Trim()+"','"+Label1.Text.Trim()+"')";//插入数据库中
myDB.DBSetSelect(cmdText);
myDB.DBOpen();
myDB.DBExcuteNonQuery();
myDB.DBClose();
}
else
{
Response.Write("<script language=javascript>alert('命名重复或下载地址重复');</script>");
}
}
else
{
Response.Write("<script language=javascript>alert('找不到文件');</script>");
}
}
本文介绍了一个文件上传功能的实现过程,包括文件名检查、重命名、存储路径设定及数据库记录更新等内容。此外,还涉及了对特定文件类型的限制及避免文件名重复的处理。

被折叠的 条评论
为什么被折叠?



