2010-08-20 97 views
1

我很麻煩,所以需要一些幫助。 我已經存儲在以下路徑我的文件 - >需要我的wpf應用程序的相對文件路徑

H:\Testapps\appz\Sample1\Sample1\Data.xml 

我試圖加載XML文件在這樣一個XmlDocument - >

XMLDocument xdoc=new XMLDocument(); 
string xmlfile = "..\Sample1\Data.xml"; 
xdoc.Load(xmlfile); 

我得到一個錯誤 -

找不到路徑的一部分 'H:\ Testapps \ appz \ Sample1 \ Sample1 \ bin \ Debug \ Sample1 \ Sample1 \ RemData.xml'。

如何繼續指定xmlfile路徑? 任何幫助表示讚賞!


我面臨的另一個問題是,當我試圖通過提供XML文件的只是名字,我沒有看到保存在XML文件的內容寫在現有的XML文件中的新節點。

但是,如果我提供了xml文件的完整路徑,數據將保存在aml文件中。

我使用

xdoc.Save("RemData.xml"); 

我想一個部分文件路徑,而不是H:\Testapps\appz\Sample1\Sample1\bin\Debug\Sample1\Sample1\RemData.xml但如何?

回答

2

您正在使用相對路徑。這樣做意味着您要告訴應用程序使用可執行文件的目錄作爲「根路徑」。你可能想要的是自動將XML文件複製到輸出目錄。爲此,我通常將XML文件的「Build Action」屬性設置爲「Embedded Resource」,並將「Copy to Output Directory」設置爲「Always Always」。希望這可以幫助。你可能還想看看Pack URI's

+1

如果您要複製到輸出,請執行其中一個或另一個操作,您不想打擾將它們作爲嵌入式資源。如果嵌入式資源實際上可能是最好的,那麼您需要使用資源流來實現它。 – 2010-08-20 18:05:03

+0

謝謝! 你讓它變得如此簡單快速:) – laksh 2010-08-20 18:06:48

+0

感謝Karmicpuppet和jimmy。 – laksh 2010-08-20 18:10:55