>백엔드 개발 >XML/RSS 튜토리얼 >모든 xml 노드 읽기 및 쓰기에 대한 개인 요약 및 xml 노드 읽기에 대한 데이터 요약

모든 xml 노드 읽기 및 쓰기에 대한 개인 요약 및 xml 노드 읽기에 대한 데이터 요약

黄舟
黄舟원래의
2017-02-27 17:03:171891검색

읽기:

 //打开某文件(假设web.config在根目录中)
    string filename=Server.MapPath("/") + @"Webapplication1\web.config";
    xmlDocument xmldoc= new XmlDocument();
    xmldoc.Load(filename);
 
    //得到顶层节点列表
    XmlNodeList topM=xmldoc.DocumentElement.ChildNodes;
    foreach(XmlElement element in topM)
    {
     if(element.Name.ToLower()=="appsettings")
     {
 
      //得到该节点的子节点
      XmlNodeList nodelist=element.ChildNodes;
 
      if ( nodelist.Count >0 )
      {
       //DropDownList1.Items.Clear();
 
       foreach(XmlElement el in nodelist)//读元素值
       {
        //DropDownList1.Items.Add(el.Attributes["key"].InnerXml);
        //this.TextBox2.Text=el.Attributes["key"].InnerText;
        this.TextBox2.Text=el.Attributes["key"].Value;
        this.Label1.Text=el.Attributes["value"].Value;
 
 
            //同样在这里可以修改元素值,在后面save。
         //  el.Attributes["value"].Value=this.TextBox2.Text;
       }
 
      }
     }
    }


노드 아래에 요소를 추가하고 두 개의 속성을 추가합니다.

 if(element.Name.ToLower()=="appsettings")
    {
 
     XmlElement elem =xmldoc.CreateElement("add");
     
     element.AppendChild(elem);
     elem.InnerText="ltp";
 
     xmldoc.Save(filename);
       
    }

효과:

<appSettings>
    <add key="密码" value="admin" />
    <add>ltp</add>
  </appSettings>

노드 요소 삭제

 if(element.Name.ToLower()=="appsettings")
    {
 
     XmlElement elem =xmldoc.CreateElement("add");
     element.AppendChild(elem);
 
     XmlAttribute xa=xmldoc.CreateAttribute("key");
     xa.Value="ltp";
 
     XmlAttribute xa2=xmldoc.CreateAttribute("value");
     xa2.Value="first";
 
     elem.SetAttributeNode(xa);
     elem.SetAttributeNode(xa2);
 
     xmldoc.Save(filename);
       
    }

123을 찾고 싶다면 321이 나오면 어떻게 써야 하나요?

  <appSettings>
    <add key="密码" value="admin" />
    <add key="ltp" value="first" />
  </appSettings>
 
//添加空元素:
   XmlNode node=doc.CreateElement(groupname);
     node.InnerText="";
     doc.LastChild.AppendChild(node);
 
     doc.Save(xmlfile);

위는 xml을 읽고 쓰는 모든 노드의 개인 요약과 xml 노드를 읽는 데이터 요약입니다. 자세한 내용은 PHP 중국어 사이트(www.php.cn)를 참고해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.