2011-02-23 57 views
3

如何打開和編輯現有的XML文件?我想修改像一些值:如何使用C#讀取和編輯XML文件?

<address>myaddr</address> 

例如,我想放歐萊雅,而是如果MYADDR。我在C#工作。如果你能告訴我一些代碼,我將不勝感激。

回答

6

您可以使用XDocument類:

var doc = XDocument.Load("test.xml"); 
var address = doc.Root.Element("address"); 
if (address != null) 
{ 
    address.Value = "new value"; 
} 
doc.Save("test.xml"); 
+0

Thx很多!如果xml文件的路徑是動態的..我可以在程序中做到這一點嗎? – hello 2011-02-23 08:11:03

+0

@hello,* dynamical *是什麼意思?你不能使用變量嗎? – 2011-02-23 08:11:54

+0

我不想給root c:\ desktop \ xml。 – hello 2011-02-23 08:18:38

1

比方說,你有下面的XML文件:

<root> 
    <address>myaddr</address> 
</root> 

你想要做的更換。有很多選擇。一些正在顯式修改XML,另一些正在將您的XML轉換爲類,修改並轉換回XML(序列化)。這裏的方式之一做到這一點:

XDocument doc = XDocument.Load("myfile.xml"); 
doc.Root.Element("address").Value = "new address" 
doc.Save("myfile.xml") 

欲瞭解更多信息,請閱讀以下內容:

  1. 的LINQ to XML是我在這裏使用的技術 - http://msdn.microsoft.com/en-us/library/bb387098.aspx

  2. XML序列化另一種技術 - http://msdn.microsoft.com/en-us/library/182eeyhh.aspx

+0

我有一個錯誤。 NullReferenceException異常。對象引用未設置爲對象的實例。爲什麼? – hello 2011-02-23 08:46:07

+0

事情是我有這樣的東西

myaddr
。然後 ...和同樣的事情 – hello 2011-02-23 08:49:15