日期:2014-05-18  浏览次数:20773 次

C#关于相对路径的问题
我想读写XML文件 其中
XMlDocument dc1=new XmlDoucmnent();
dc1.Load()
中我想用相对路径来访问
现在我的文件夹的路径是D:\workspace\WebApplication2\XML\XML2\333.XML
在这个文件夹的里面有我想通过Load()方法载入的
请问怎么设置这个文件的相对路径?

------解决方案--------------------
Application.StartupPath 可以获取当前程序运行的路径,可以和相对路径拼接成完整路径,也就不需要相对路径了
------解决方案--------------------
楼上说的对,就是取得应用程序的路径,然后再进行拼接
------解决方案--------------------
相对路径C#也是支持的,用"."和".."表示,"."代表当前目录,".."代表上一级目录。

假设你的EXE在 D:\workspace\WebApplication2\
那么你的XML文件的路径就是".\XML\XML2\333.XML"

如果你的EXE在 D:\workspace\WebApplication2\bin
那么你的XML文件的路径就是"..\XML\XML2\333.XML"

当然,用Application.StartupPath获得EXE路径后拼接也是很好的方法。用相对路径的好处是代码简单,但局限性就是只能在同一个驱动器里(如:都在D:里)
------解决方案--------------------
1楼3楼说的都是正确的,