本人在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");
这样做的局限性太大.
请教高人,有没什么方法可以使用相对路径来存取这些文件?
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");
这样做的局限性太大.
请教高人,有没什么方法可以使用相对路径来存取这些文件?
那这个跟相对路径拼接起来实现你所要求的效果另外,拼接前需要判断一下,若是设置的路径中包含冒号,则应该是绝对路径,此时就不要再用Application.StartupPath做前缀拼接了
StringBuilder sb = new StringBuilder();
string runPath = Application.StartupPath;
sb.Append(runPath);
sb.Append(path);
ds.ReadXml(sb.ToString());
/// 格式化路径函数
/// </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;
}
你能再帮我解决一个问题吗?
网址是:http://community.csdn.net/Expert/topic/5068/5068702.xml?temp=.5917932