回 帖 发 新 帖 刷新版面

主题:关于上传的问题求助

我用c#做上传和下载的的时候
用的是HTML的File Field控件 和web窗体的Button控件
现在我的代码是
private void Page_Load(object sender, System.EventArgs e)
        {
            // 在此处放置用户代码以初始化页面
            // 在此处放置用户代码以初始化页面
            if(!Page.IsPostBack)
            {
                this.fileDiv.InnerHtml = this.getFileList();
            }
            
        }


        //列出已经上传的文件
        public string getFileList()
        {
            string m_DirPath =Server.MapPath(@"\newweb\UpFile\");
            string[] m_FileLst = Directory.GetFiles(m_DirPath,"*.*");

            StringBuilder strBld = new StringBuilder();

            string strTmp = "";

            strBld.Append("<table width=100% border=0 cellpadding=0 cellspacing=0>");
            strBld.Append("<tr>");
            strBld.Append("<td class=lsttitle>&nbsp;</td>");
            strBld.Append("<td class=lsttitle>&nbsp;文件名</td>");
            strBld.Append("<td class=lsttitle>&nbsp;删除</td>");
            strBld.Append("</tr>");

            for (int i=0;i< m_FileLst.Length;i++)
            {
                strTmp = Path.GetFileName(m_FileLst[i].ToString());
                strBld.Append("<tr>");
                strBld.Append("<td class=lstitem>&nbsp;");

                strBld.Append("<input type=\"checkbox\" name=\"FileChx\" value=\""+strTmp+"\">");
                strBld.Append("</td>");
                strBld.Append("<td class=lstitem>");
                strBld.Append(strTmp);
                strBld.Append("</td>");
                strBld.Append("<td class=lstitem>");
                strBld.Append("<a href=UpFile/"+strTmp+" target=\"_blank\">下载</a></td>");
                strBld.Append("</tr>");
            }
            strBld.Append("</table>");

            return strBld.ToString();
        
        }

private void Button2_Click(object sender, System.EventArgs e)
        {
            try
            {
                string str=this.File1.PostedFile.FileName;
                if(str.LastIndexOf ("\\")>1)
                {
                    str=@"\newweb\UpFile\"+str.Substring (str.LastIndexOf ("\\")+1);
                    
                    this.File1.PostedFile.SaveAs (Server.MapPath (str));

                    this.fileDiv.InnerHtml = this.getFileList();
                }
                else
                {                    
                    Response.Write ("<script>window.alert('请选择要上传的文件!');<script>");
                }
            }
            catch(Exception err)
            {
                Response.Write ("<script>window.alert('上传失败:"+err.Message+"');<script>");

            }

        }
不知道这么的我上传后一点反映也没有
我到upFile文件夹里也看不到上传的文件。

回复列表 (共11个回复)

11 楼

#region 上传文件
            string PathName =File1.PostedFile.FileName;//全路径
            string FileName = PathName.Substring(PathName.LastIndexOf("\\")+1); //文件名
            string ExName = FileName.Substring(FileName.LastIndexOf(".")+1);//扩展名
            
            //判断文件夹是否存在
            if(!Directory.Exists(Server.MapPath("Files")))
            {
                Directory.CreateDirectory(Server.MapPath("Files"));
            }

            File1.PostedFile.SaveAs(Server.MapPath(@"Files\")+FileName);
            #endregion

我来回复

您尚未登录,请登录后再回复。点此登录或注册