XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(m_stFileName); ArrayList List = new ArrayList(); XmlNodeList nodelist = xmlDoc.GetElementsByTagName("RootScreen");
foreach (XmlNode xnode in nodelist)
{
List.Add(xnode);
} nodelist = xmlDoc.GetElementsByTagName("Category");
foreach (XmlNode xnode in nodelist)
{
List.Add(xnode);
} nodelist = xmlDoc.GetElementsByTagName("Screen");
foreach (XmlNode xnode in nodelist)
{
List.Add(xnode);
} nodelist = xmlDoc.GetElementsByTagName("Diagram");
foreach (XmlNode xnode in nodelist)
{
List.Add(xnode);
} foreach (XmlNode xn in List)
{
XmlElement xe = (XmlElement)xn;
if (xe.Name == "RootScreen" | xe.Name == "Category" | xe.Name == "Screen" | xe.Name == "Diagram")
{
if (xe.GetAttribute("name") == m_stText)
{
if (e.Label != null)
{
xe.SetAttribute("name", e.Label);
}
break;
}
}
}
xmlDoc.Save(m_stFileName);
xmlDoc.Load(m_stFileName); ArrayList List = new ArrayList(); XmlNodeList nodelist = xmlDoc.GetElementsByTagName("RootScreen");
foreach (XmlNode xnode in nodelist)
{
List.Add(xnode);
} nodelist = xmlDoc.GetElementsByTagName("Category");
foreach (XmlNode xnode in nodelist)
{
List.Add(xnode);
} nodelist = xmlDoc.GetElementsByTagName("Screen");
foreach (XmlNode xnode in nodelist)
{
List.Add(xnode);
} nodelist = xmlDoc.GetElementsByTagName("Diagram");
foreach (XmlNode xnode in nodelist)
{
List.Add(xnode);
} foreach (XmlNode xn in List)
{
XmlElement xe = (XmlElement)xn;
if (xe.Name == "RootScreen" | xe.Name == "Category" | xe.Name == "Screen" | xe.Name == "Diagram")
{
if (xe.GetAttribute("name") == m_stText)
{
if (e.Label != null)
{
xe.SetAttribute("name", e.Label);
}
break;
}
}
}
xmlDoc.Save(m_stFileName);
<RootScreen name="Root" comment="">
<Category name="333" key="audio" condition="zsdvg" transition="Yes" changeto="He" id="100">
<Screen name="0" width="480" height="320" comment="" IsRender="False" id="200" formid="" xmlfilepath="">
</Screen>
<Screen name="123" width="360" height="270" comment="" IsRender="False" id="300" formid="" xmlfilepath="">
<Drawingdata type="circinal" comment="" point="[341,117]" id="1" Horiradii="126" Verradii="53">
</Drawingdata>
<Drawingdata type="ploygon" id="2" comment="" point="[292,232][405,284][519,153][396,256][390,236]">
</Drawingdata>
</Screen>
<Diagram name="Diagram">
</Diagram>
<Screen name="Screen" width="400" height="240" comment="" formid="Form_1" xmlfilepath="D:\Sample\Sample\All\Form_1.xml" IsRender="True">
<hwkey key="audio" condition="" transition="Yes" changeto="He" action="" subaction="">
</hwkey>
<hwkey key="map guide" condition="" transition="Yes" changeto="O" action="" subaction="">
</hwkey>
</Screen>
<Diagram name="New Diagram_2">
</Diagram>
<Diagram name="New Diagram_3">
</Diagram>
<Category name="Category">
<Screen name="New Screen_2" width="400" height="240">
</Screen>
<Screen name="New Screen_3" width="400" height="240">
</Screen>
<Screen name="New Screen_4" width="400" height="240">
</Screen>
</Category>
</Category>
</RootScreen>
</Project>
XmlDocument xmlDoc=new XmlDocument();
xmlDoc.Load( Server.MapPath("data.xml") ); XmlNodeList nodeList=xmlDoc.SelectSingleNode("Employees").ChildNodes;//获取Employees节点的所有子节点 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="亚胜";//则修改
}
}
}
}
xmlDoc.Save( Server.MapPath("data.xml") );//保存。