a.xml
<n>
<user>
<name>a1</name>
<qq>0</qq>
</user>
<user>
<name>a2</name>
<qq>0</qq>
</user>
</n>
现在想在后台(c#)修改name=a1节点的qq为123456.不知如何做.请高手帮忙.分数不多了,
如<user>
<name>a1</name>
<qq>123456</qq>
</user>
<n>
<user>
<name>a1</name>
<qq>0</qq>
</user>
<user>
<name>a2</name>
<qq>0</qq>
</user>
</n>
现在想在后台(c#)修改name=a1节点的qq为123456.不知如何做.请高手帮忙.分数不多了,
如<user>
<name>a1</name>
<qq>123456</qq>
</user>
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("a.xml"); XmlNodeList nodeList = xmlDoc.SelectSingleNode("n//user").ChildNodes; //遍历所有子节点
foreach (XmlNode xn in nodeList)
{
//将子节点类型转换为XmlElement类型
XmlElement xe = xn as XmlElement;
if (xe.Name == "name")
{
if (xe.InnerText.Trim() == "a1")
{
//确认qq结点在近跟name节点之后
(xe.NextSibling as XmlElement).InnerText = "123456";
}
}
}
xmlDoc.Save("a.xml");
}
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("test.xml"); XmlNodeList nodeList = xmlDoc.SelectSingleNode("n//user").ChildNodes; //遍历所有子节点
foreach (XmlNode xn in nodeList)
{
//将子节点类型转换为XmlElement类型
XmlElement xe = xn as XmlElement;
if (xe.Name == "name")
{
if (xe.InnerText.Trim() == "a1")
{
//确认qq节点近跟在name节点之后
(xe.NextSibling as XmlElement).InnerText = "123456";
}
}
}
xmlDoc.Save("test.xml");
}
{
}
这里不管有多少子节只循环两次