Rumah pembangunan bahagian belakang Tutorial XML/RSS 读写xml所有节点个人小结 和 读取xml节点的数据总结

读写xml所有节点个人小结 和 读取xml节点的数据总结

Feb 27, 2017 pm 05:03 PM

读:

 //打开某文件(假设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;
       }
 
      }
     }
    }
Salin selepas log masuk

xmldoc.Save(filename);

在某节点下增加一个元素,并设置值:

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

效果:

<appSettings>
    <add key="密码" value="admin" />
    <add>ltp</add>
  </appSettings>
Salin selepas log masuk

在某节点下增加一个元素,并增加两个属性:

 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);
       
    }
Salin selepas log masuk

效果:

  <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);
Salin selepas log masuk

删除一个节点元素

string itemname=this.listBox1.SelectedItem.ToString();
   
   this.listBox1.Items.Remove(this.listBox1.SelectedItem);
 
   //begin del xmlfile
   XmlDocument doc=new XmlDocument();
   doc.Load(xmlfile);
   
   XmlNodeList topM=doc.DocumentElement.ChildNodes;
   foreach(XmlElement element in topM)
   {
    if(element.Name==this.comboBox1.Text)
    {
 
     //得到该节点的子节点
     XmlNodeList nodelist=element.ChildNodes;      
 
     foreach(XmlElement el in nodelist)//读元素值
     {       
      if(el.Attributes["key"].Value==itemname)
      {
       element.RemoveChild(el);
      }
 
     }//循环元素
      
    }//得到组
 
   }//循环组
   doc.Save(xmlfile);  //一定要保存一下,否则不起作用
 
//筛选数据
PRivate void Reader_Xml(string pathFlie)
{
   XmlDocument Xmldoc=new XmlDocument();
   Xmldoc.Load(pathFlie);
   XmlNodeList Record1=Xmldoc.DocumentElement.SelectNodes(Code[@id=&#39;1&#39;])
   int f=0;
   foreach(XmlNode xnode in Record1)
    {
 
    }
} /**//*读取xml数据   两种xml方式*/
<aaa>
     <bb>something</bb>
     <cc>something</cc>
</aaa>
 
<aaa>
    <add key="123" value="321"/>
</aaa>
/**//*第一种方法*/
DS.ReadXml("your xmlfile name");
Container.DataItem("bb");
Container.DataItem("cc");
DS.ReadXmlSchema("your xmlfile name");
 
/**//*第二种方法*/
<aaa>
    <add key="123" value="321"/>
</aaa>
Salin selepas log masuk

如果我要找到123然后取到321应该怎么写呢?

using System.XML;
XmlDataDocument xmlDoc = new System.Xml.XmlDataDocument();
xmlDoc.Load(@"c:\Config.xml");
XmlElement elem = xmlDoc.GetElementById("add");
string str = elem.Attributes["value"].Value
 
 
/**//*第三种方法:  SelectSingleNode  读取两种格式的xml *---/
--------------------------------------------------------------------
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
       <ConnectionString>Data Source=yf; user id=ctm_dbo;passWord=123</ConnectionString>             
  </appSettings>
</configuration>
--------------------------------------------------------------------------
XmlDocument doc = new XmlDocument();
doc.Load(strXmlName);
 
    XmlNode node=doc.SelectSingleNode("/configuration/appSettings/ConnectionString");
    if(node!=null)
    {
     string k1=node.Value;    //null
     string k2=node.InnerText;//Data Source=yf; user id=ctm_dbo;password=123
     string k3=node.InnerXml;//Data Source=yf; user id=ctm_dbo;password=123
     node=null;
    }
 
********************************************************************
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
       <add key="ConnectionString" value="Data Source=yf; user id=ctm_dbo;password=123" />             
  </appSettings>
</configuration>
**--------------------------------------------------------------------**
     XmlNode node=doc.SelectSingleNode("/configuration/appSettings/add");
    if(node!=null)
    {
     string k=node.Attributes["key"].Value;
     string v=node.Attributes["value"].Value;
     node=null;
    }
*--------------------------------------------------------------------*
    XmlNode node=doc.SelectSingleNode("/configuration/appSettings/add");
    if(node!=null)
    {
     XmlNodeReader nr=new XmlNodeReader(node);
     nr.MoveToContent();
    //检查当前节点是否是内容节点。如果此节点不是内容节点,则读取器向前跳至下一个内容节点或文件结尾。
     nr.MoveToAttribute("value");
     string s=nr.Value;
     node=null;
    }
Salin selepas log masuk

 以上就是读写xml所有节点个人小结 和 读取xml节点的数据总结 的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Soal berat minimum dalam subpokok bermula dari nod X dan jarak paling banyak D Soal berat minimum dalam subpokok bermula dari nod X dan jarak paling banyak D Aug 25, 2023 am 11:25 AM

Apabila melakukan pengaturcaraan komputer, kadangkala adalah perlu untuk mencari berat minimum subpokok yang berasal dari nod tertentu, dengan syarat subpokok tidak boleh mengandungi nod yang lebih daripada unit D dari nod yang ditentukan. Masalah ini timbul dalam pelbagai bidang dan aplikasi, termasuk teori graf, algoritma berasaskan pokok, dan pengoptimuman rangkaian. Subpokok ialah subset struktur pokok yang lebih besar, dengan nod yang ditentukan berfungsi sebagai nod akar subpokok. Subpohon mengandungi semua keturunan nod akar dan tepi penghubungnya. Berat nod merujuk kepada nilai khusus yang diberikan kepada nod itu, yang boleh mewakili kepentingan, kepentingan atau metrik lain yang berkaitan. Dalam masalah ini, matlamatnya adalah untuk mencari berat minimum antara semua nod dalam subpokok sambil mengehadkan subpokok kepada nod yang paling banyak unit D dari nod akar. Dalam artikel berikut, kita akan menyelidiki kerumitan perlombongan pemberat minimum daripada subpokok

Bagaimana untuk melaksanakan fungsi salinan dan potong nod peta minda melalui Vue dan jsmind? Bagaimana untuk melaksanakan fungsi salinan dan potong nod peta minda melalui Vue dan jsmind? Aug 15, 2023 pm 05:57 PM

Bagaimana untuk melaksanakan fungsi salinan dan potong nod peta minda melalui Vue dan jsmind? Peta minda ialah alat pemikiran biasa yang boleh membantu kita menyusun pemikiran kita dan menyusun logik pemikiran kita. Fungsi salin dan potong nod adalah operasi yang biasa digunakan dalam peta minda, yang membolehkan kami menggunakan semula nod sedia ada dengan lebih mudah dan meningkatkan kecekapan organisasi berfikir. Dalam artikel ini, kami akan menggunakan dua alat Vue dan jsmind untuk melaksanakan fungsi salinan dan potong nod peta minda. Pertama, kita perlu memasang Vue dan jsmind dan buat

Apakah kaedah untuk memadam nod dalam js Apakah kaedah untuk memadam nod dalam js Sep 01, 2023 pm 05:00 PM

Kaedah untuk memadam nod dalam js ialah: 1. Kaedah removeChild() digunakan untuk mengeluarkan nod anak yang ditentukan daripada nod induk Ia memerlukan dua parameter Parameter pertama ialah nod anak untuk dipadamkan, dan parameter kedua ialah nod induk. 2. Kaedah parentNode.removeChild() boleh dipanggil terus melalui nod induk untuk memadamkan nod anak; Atribut innerHTML digunakan untuk memadam kandungan nod.

Cari laluan terpendek antara mana-mana dua nod menggunakan algoritma Floyd-Warshal Cari laluan terpendek antara mana-mana dua nod menggunakan algoritma Floyd-Warshal Sep 20, 2023 pm 02:21 PM

C++ mempunyai makro, yang ditakrifkan sebagai sekeping kod atau nilai yang dijangkakan, dan ia akan digunakan semula apabila pengguna memerlukannya. Algoritma Floyd-Walshall ialah proses mencari laluan terpendek antara semua pasangan bucu dalam graf berwajaran tertentu. Algoritma mengikut pendekatan pengaturcaraan dinamik untuk mencari graf berat minimum. Marilah kita memahami maksud algoritma Floyd-Walshall melalui rajah - ambil bucu 1 sebagai sumber dan bucu 4 sebagai destinasi dan cari laluan terpendek di antara mereka. Kami telah melihat bahawa terdapat dua laluan yang boleh disambungkan ke bucu sasaran 4. 1->4 – tepi mempunyai berat 51->8->3->4 – berat tepi (1+2+1) ialah 4. Dalam graf I yang diberikan, kita melihat tepi terkecil yang menghubungkan dua bucu. Jadi di sini puncaknya

Cara membuat, memadam, menambah dan menggantikan nod elemen dalam js (dengan contoh kod) Cara membuat, memadam, menambah dan menggantikan nod elemen dalam js (dengan contoh kod) Aug 06, 2022 pm 05:26 PM

Artikel ini terutamanya memperkenalkan cara membuat, memadam, menambah dan menggantikan nod elemen dalam js. Saya harap ia akan membantu rakan yang memerlukan!

Menyemak sama ada laluan antara dua nod dalam graf yang diberikan mewakili laluan terpendek Menyemak sama ada laluan antara dua nod dalam graf yang diberikan mewakili laluan terpendek Sep 07, 2023 pm 06:57 PM

Untuk menyemak sama ada laluan yang diberikan antara dua pusat graf mematuhi laluan terpendek, ini boleh dikira dengan membandingkan keseluruhan berat tepi sepanjang laluan yang diberikan kepada jarak terpendek antara gabungan pusat yang sama menggunakan laluan terpendek yang boleh dipercayai, seperti Pengiraan Dijkstra atau pengiraan Floyd−Warshall. Jika semua pemberat tepi pada laluan tertentu sepadan dengan pemadaman paling terhad, maka ia mewakili laluan paling mudah. Juga: Jika berat tepi keseluruhan lebih menonjol daripada jarak terpendek, ini menunjukkan bahawa terdapat jarak pendek antara dua pusat dalam graf. Kaedah Digunakan Algoritma Dijkstra Floyd−Warshall Algorithm dengan Kos Pembalikan Tepi Algoritma Greedy Pengiraan Dijkstra mungkin merupakan pengiraan traversal graf yang popular.

Dengan ChatGPT pemalam, ia adalah nod, tetapi bukan pusat Dengan ChatGPT pemalam, ia adalah nod, tetapi bukan pusat Apr 04, 2023 am 11:45 AM

OpenAI ialah nod (walaupun nod penting) dalam dunia dialog robot-robot, tetapi ia bukan pusatnya. ChatGPT telah melancarkan mekanisme Plugin, yang merupakan perkembangan yang sangat menarik. Semua orang sebulat suara mengulas bahawa "sistem pengendalian telah dilahirkan." Kenyataan ini adalah salah sama sekali. OpenAI ialah nod (walaupun nod penting) dalam dunia dialog robot-robot, tetapi ia bukan pusatnya. Saya sentiasa mempunyai gambaran dalam fikiran saya: dunia di mana robot bercakap dengan robot. Orang ramai berbual dengan robot dan membiarkan robot membantu manusia menyelesaikan tugas melalui rakan robotnya. Pemalam ChatGPT menunjukkan dunia dengan sempurna

Dalam program C, terjemah kandungan berikut ke dalam bahasa Cina: Program untuk mencari nod ke-n dari bahagian bawah senarai terpaut Dalam program C, terjemah kandungan berikut ke dalam bahasa Cina: Program untuk mencari nod ke-n dari bahagian bawah senarai terpaut Sep 13, 2023 pm 03:13 PM

Diberi n nod, tugasnya adalah untuk mencetak nod ke-n pada penghujung senarai terpaut. Program ini tidak boleh mengubah susunan nod dalam senarai, tetapi hanya boleh mencetak nod ke-n dari nod terakhir senarai terpaut. Contoh Input-:102030405060 N=3Output-:40 Dalam contoh di atas, bermula dari nod pertama, traverse ke count-n nod, iaitu, 10,2030,40,50,60, jadi nod ketiga hingga terakhir ialah 40 . Daripada merentasi keseluruhan senarai dengan begitu cekap pendekatan yang boleh anda ikuti - dapatkan penunjuk sementara untuk, katakan, temp jenis nod tetapkan penunjuk sementara ini ke nod pertama yang ditunjuk oleh penuding kepala untuk menetapkan pembilang kepada yang dalam senarai

See all articles