开发环境.net 2003,项目文件夹FMTOOLS与数据文件夹dataFiles在同一个层次,项目文件夹FMTOOLS里包括FMTOOLS文件夹、FMTOOLS.ncb、FMTOOLS.sln,数据文件夹dataFiles里有SA.dat数据文件,我要在FMTOOLS.sln通过相对路径访问SA.dat,请问相对路径怎么写??
比如:FMTOOLS.sln中的程序fp = fopen("相对路径\\SA", "rb"),这个相对路径怎么写?

解决方案 »

  1.   

    Request.MapPath("~")这个是取得应用程序路径,也就是你的相对路径。
      

  2.   

    关于在ASP.NET中物理路径和虚拟路径的取得
    //Request.CurrentExecutionFilePath; 当前请求的虚拟路径 是这种格式:\虚拟目录名\admin\index.aspx
    //Request.ApplicationPath    //获取服务器上 ASP.NET 应用程序的虚拟应用程序根路径。\虚拟目录名(应用程序名)以上都是虚拟目录中的文件路径,即是IIS中的路径。要得到真真的物理路径要在得到以上路径的基础上再加:
    Server.MapPath(Request.ApplicationPath   +"SPLConfig/ClassMap.xml")//这样可能会有一个BUG最好是这样
    string m_ApplicationPath=Request.ApplicationPath;
       if(this.m_ApplicationPath=="")
        this.m_ApplicationPath="/";
       if(!this.m_ApplicationPath.EndsWith("/"))
        this.m_ApplicationPath +="/";  //先判断一下 /
    Server.MapPath(m_ApplicationPath+"SPLConfig/ClassMap.xml")2005 地址Url 的新的访问方式
    //this.Request.CurrentExecutionFilePath; //当前请求的虚拟忙碌中的路径
        //this.Request.FilePath;  //虚拟目录中的路径
        //this.Request.PhysicalPath;  //当前请求的物理路径
        //this.Request.PhysicalApplicationPath;//应用程序的物理路径 
        //this.Request.Url.AbsoluteUri;//全部URL Request.RawUrl 获得网址带变量 Request.UrlReferrer 获得网址不带变量 刷新本页面的方法 :
    this.Response.Redirect(this.Request.Url.AbsoluteUri, true);this.Response.Redirect(this.Request.Url.ToString());定制方法的刷新this.Response.Redirect(this.Request.CurrentExecutionFilePath + "?depid=" + this.hDepID.Value.ToString());
      

  3.   

    winform 就是System.Windows.Forms.Application.StartupPath
      

  4.   

    web我用fp = fopen("~\\SA", "rb"),~\就是相对源程序路径
      

  5.   

    我的开发环境是VC++.net 2003 \ MFC\MFC APPLICATION
    上面的方法好象不行的
      

  6.   

    不应该说是针对FMTOOLS.sln的相对路径,FMTOOLS.sln是个解决方案,在程序运行的时候是没有这个东西的,只有你的程序,所以只有相对你运行的exe程序的相对路径。使用Application.StartupPath取你的exe运行的路径
      

  7.   

    TO:BearRui(AK-47)
    我的开发环境是VC++.net 2003 \ MFC\MFC APPLICATION中的对话框
    好象不支持Application.StartupPath