网页知识大全 有各种问题可直接咨询博主
您所在的位置:首页 > 服务器脚本 > ASP教程 > 正文

ASP文件如何上传?

作者:网页知识大全clewo.net 来源:网络 日期:2018/11/17 8:14:19 加入收藏 评论:0 标签:ASP文件如何上传?

传统的使用FTP类的上传相信大家都会的,这里就不作讲解了,今天我们要讲解的是ASP文件代码上传功能。

放一个file类型的<input>和一个按钮,并且为这个按钮添加点击事件(btnUpLoad_Click)就可以上传了。

<input id="UpLoad" type="file" runat="server" />  

<asp:Button runat="server" Text="上传" ID="btnUpLoad" OnClick="btnUpLoad_Click" />  

后台

       再就是在后台编写上传按钮点击事件UpLoad_Click里的代码,先大体说一下思路:

       1、根据file类型的<input>控件获得将要上传文件在本机的物理路径;

       2、在这个物理路径中用截取字符串的方法获得文件名(第一步中取得的路径为本机的绝对路径,在服务器上是无效的,所以这里我们只需要获取文件名);

       3、利用file类型的<input>控件属性PostedFile的SaveAs()方法将相应文件存储到服务器中指定的文件夹中。

       核心代码:

protected void btnUpLoad_Click(object sender, EventArgs e)  

    {  

        //取出所选文件的本地路径  

        string fullFileName = this.UpLoad.PostedFile.FileName;  

        //从路径中截取出文件名  

        string fileName = fullFileName.Substring(fullFileName.LastIndexOf("\\") + 1);  

        //限定上传文件的格式  

        string type = fullFileName.Substring(fullFileName.LastIndexOf(".") + 1);  

        if (type == "doc" || type == "docx" || type == "xls" || type == "xlsx" || type == "ppt" || type == "pptx" || type == "pdf" || type == "jpg" || type == "bmp" || type == "gif" || type == "png" || type == "txt" || type == "zip" || type == "rar")  

        {  

            //将文件保存在服务器中根目录下的files文件夹中  

            string saveFileName = Server.MapPath("/files") + "\\" + fileName;  

            UpLoad.PostedFile.SaveAs(saveFileName);  

            Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('文件上传成功!');</script>");  

  

            //向数据库中存储相应通知的附件的目录  

            BLL.news.InsertAnnexBLL insertAnnex = new BLL.news.InsertAnnexBLL();  

            AnnexEntity annex=new AnnexEntity();     //创建附件的实体  

            annex.AnnexName=fileName;               //附件名  

            annex.AnnexContent=saveFileName;        //附件的存储路径  

            annex.NoticeId = noticeId;              //附件所属“通知”的ID在这里为已知  

            insertAnnex.InsertAnnex(annex);         //将实体存入数据库(其实就是讲实体的这些属性insert到数据库中的过程,具体BLL层和DAL层的代码这里不再多说)  

        }  

        else  

        {  

            Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('请选择正确的格式');</script>");  

        }  

    }  

是不是很容易就学会了呢?其实现在有好多现成的ASP文件上传代码组件,大家只要封装一下,就可以布局到自己的网站上去的。网页知识大全为大家整理。


本文网址:http://clewo.net/asp/121.html
读完这篇文章后,您心情如何?
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0