protected void btnAdd_Click(object sender, EventArgs e)
    {
        if (FileUpload1.HasFile)
        {
            Response.Write(FileUpload1.PostedFile.FileName);
        }
    }
这段代码,
在本地执行,页面显示C:\Users\Public\Pictures\Sample Pictures\Penguins.jpg 
在服务器运行,页面显示:Penguins.jpg 请问,怎样才能得到完整路径啊?

解决方案 »

  1.   

     bool fileIsValid = false;
            //如果确认了上传文件,则判断文件类型是否符合要求
            if (this.FileUpload1.HasFile)
            {
                //获取上传文件的后缀
                String fileExtension = System.IO.Path.GetExtension(this.FileUpload1.FileName).ToLower();
                String[] restrictExtension ={ ".gif", ".jpg", ".bmp", ".png" };
                //判断文件类型是否符合要求
                for (int i = 0; i < restrictExtension.Length; i++)
                {
                    if (fileExtension == restrictExtension[i])
                    {
                        fileIsValid = true;
                    }
                }
                //如果文件类型符合要求,调用SaveAs方法实现上传,并显示相关信息
                if (fileIsValid == true)
                {
                    try
                    {
                        this.Image1.ImageUrl = "img/" + FileUpload1.FileName;
                        this.FileUpload1.SaveAs(Server.MapPath("img/") + FileUpload1.FileName);
                        //this.Label2.Text.Split("//");
                        TextBox2.Text = this.FileUpload1.FileName;//定义一个文本框,得到上传得文件名,为录入数据库作准备
                    }
                    catch
                    {
                        this.Label2.Text = "文件上传失败!";
                    }
                    finally
                    {                }
                }
                else
                {
                    this.Label3.Text = "只能够上传后缀为.gif,.jpg,.bmp,.png的文件夹";
                }
            }
      

  2.   

    string m_ApplicationPath=Request.ApplicationPath;
    if(this.m_ApplicationPath=="")
       this.m_ApplicationPath="/";
    if(!this.m_ApplicationPath.EndsWith("/"))
       this.m_ApplicationPath +="/";
    Server.MapPath(m_Application+PathFileUpload1.PostedFile.FileName)
      

  3.   

    工具-internet选项-安全-自定义级别-将文件上传到服务器是包含本地路径   好像是这样的
      

  4.   

    FileUpload1.PostedFile.FileName获得的本身就是完整的路径名啊,你设置之后就能得到吧,我最近做的东西就是通过这样设置,然后得到的路径名,对文件进行读取的,对的。
      

  5.   

    FileUpload1.PostedFile.FileName  带路径,完全的
    FileUpload1.FileName 不带路径的
      

  6.   

    string filePath=FileUpload1.PostedFile.FileName;
      

  7.   

    在前台写个JS,如下:document.all("fileupload的ID").value,然后把这个值赋给一个隐藏控件,控件可以是<input type="text" runat="server" id="path" />然后后台直接通过path.value获取到fileupload里面的完整路径
      

  8.   

    纠正下,可以用<input type="hidden" />
      

  9.   

    哇哈哈~莫X~~把这分给我吧~~再怎么我也说了很多啦~不给~嘿嘿~我就告诉MJJ~嘿嘿
      

  10.   

    这个我知道,这个是ie里的设置问题,我以前也遇到过,安全--自定义--将文件上传到服务器时包含本地路径(不确定,不过应该就是IE设置的问题)