本人在WIN FORM编程中,使用的都是绝对路径,如:
 DataSet ds = new DataSet();
 ds.ReadXml(@"C:\Documents and Settings\Administrator\My Documents\TheLastTime.xml");XmlDocument xmldoc1 = new XmlDocument();
xmldoc1.Load(@"C:\Documents and Settings\Administrator\My Documents\mypeople.xml");
这样做的局限性太大.
请教高人,有没什么方法可以使用相对路径来存取这些文件?

解决方案 »

  1.   

    Application.StartupPath是启动了当前应用程序的可执行文件的路径
    那这个跟相对路径拼接起来实现你所要求的效果另外,拼接前需要判断一下,若是设置的路径中包含冒号,则应该是绝对路径,此时就不要再用Application.StartupPath做前缀拼接了
      

  2.   

    string path = "TheLastTime.xml";
    StringBuilder sb = new StringBuilder();
    string runPath = Application.StartupPath;
    sb.Append(runPath);
    sb.Append(path);
    ds.ReadXml(sb.ToString());
      

  3.   

    /// <summary>
            /// 格式化路径函数
            /// </summary>
            /// <param name="path">待处理路径</param>
            /// <returns>处理后路径</returns>
            private string PathFormat(string path)
            {           
                string result = (path.IndexOf(":") > 0) ? path : string.Format("{0}\\{1}", Application.StartupPath, path);
                return result;
            }
      

  4.   

    谢谢了.给分
    你能再帮我解决一个问题吗?
    网址是:http://community.csdn.net/Expert/topic/5068/5068702.xml?temp=.5917932