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);

解决方案 »

  1.   

    不知道你要实现什么,最好贴出你的xml文件
      

  2.   

    <Project name="sample.prj" directory="sample.prj" width="400" height="240" hwkey="map guide,audio,navi" status="buttondown,buttonup">
      <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>
      

  3.   

    参考
    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") );//保存。