c#讀寫xml檔案
已知有一個XML檔案(bookstore.xml)如下:

代碼
<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
</bookstore>
1、往<bookstore>節點中插入一個<book>節點:

XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("da.xml");
XmlNode root = xmlDoc.SelectSingleNode("bookstore");//查找<bookstore>
XmlElement xe1 = xmlDoc.CreateElement("book");//建立一個<book>節點
xe1.SetAttribute("genre", "李贊紅");//設定該節點genre屬性
xe1.SetAttribute("ISBN", "2-3631-4");//設定該節點ISBN屬性
XmlElement xesub1 = xmlDoc.CreateElement("title");
xesub1.InnerText = "CS從入門到精通";//設定文本節點
xe1.AppendChild(xesub1);//添加到<book>節點中
XmlElement xesub2 = xmlDoc.CreateElement("author");
xesub2.InnerText = "候捷";
xe1.AppendChild(xesub2);
XmlElement xesub3 = xmlDoc.CreateElement("price");
xesub3.InnerText = "58.3";
xe1.AppendChild(xesub3);
root.AppendChild(xe1);//添加到<bookstore>節點中
xmlDoc.Save("da.xml");
結果為:

<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
<book genre="李贊紅" ISBN="2-3631-4">
<title>CS從入門到精通</title>
<author>候捷</author>
<price>58.3</price>
2、修改節點:将genre屬性值為“李贊紅“的節點的genre值改為“update李贊紅”,将該節點的子節點<author>的文本修改為“亞勝”。

XmlNodeList nodeList=xmlDoc.SelectSingleNode("bookstore").ChildNodes;
//擷取bookstore節點的所有子節點
foreach(XmlNode xn in nodeList)//周遊所有子節點
{
XmlElement xe=(XmlElement)xn;//将子節點類型轉換為XmlElement類型
if(xe.GetAttribute("genre")=="李贊紅")//如果genre屬性值為“李贊紅”
{
xe.SetAttribute("genre","update李贊紅");//則修改該屬性為“update李贊紅”
XmlNodeList nls=xe.ChildNodes;//繼續擷取xe子節點的所有子節點
foreach(XmlNode xn1 in nls)//周遊
{
XmlElement xe2=(XmlElement)xn1;//轉換類型
if(xe2.Name=="author")//如果找到
{
xe2.InnerText="亞勝";//則修改
break;//找到退出來就可以了
}
}
break;
}
}
xmlDoc.Save("bookstore.xml");//儲存。
C#利用XmlTextReader讀取XML節點資料

<?xml version="1.0" encoding="utf-8" ?>
<google>
<googleColorBorder>f6fbff</googleColorBorder>
<googleColorBG>f6fbff</googleColorBG>
<googleColorLink>666666</googleColorLink>
<googleColorText>046b7A</googleColorText>
<googleColorUrl>008000</googleColorUrl>
</google>

protected void Page_Load(object sender, EventArgs e)
XmlTextReader xtr = new XmlTextReader("c:\\AdColor2.xml");
while (xtr.Read()) {
if (xtr.NodeType == XmlNodeType.Element && xtr.LocalName == "googleColorBorder") {
Response.Write(xtr.ReadString() + "<br/>");
}
if (xtr.NodeType == XmlNodeType.Element && xtr.LocalName == "googleColorBG")
{
if (xtr.NodeType == XmlNodeType.Element && xtr.LocalName == "googleColorLink")
if (xtr.NodeType == XmlNodeType.Element && xtr.LocalName == "googleColorText")
if (xtr.NodeType == XmlNodeType.Element && xtr.LocalName == "googleColorUrl")
}
}