1.已知有一个XML文件(bookstore.xml)如下:
<?xml version="1.0" encoding="gb2312"?> <bookstore> <book genre="fantasy" ISBN="2-3631-4"> <title>Oberon's Legacy</title> <author>Corets, Eva</author> <price>5.95</price> </book> </bookstore>
1、往70520fc1addb88c1722487f5b44e82c9节点中插入一个463aef0d2da08708f472268a99530dbe节点:
XmlDocument xmlDoc=new XmlDocument(); xmlDoc.Load("bookstore.xml"); XmlNode root=xmlDoc.SelectSingleNode("bookstore");//查找<bookstore> XmlElement xe1=xmlDoc.CreateElement("book");//创建一个<book>节点 xe1.SetAttribute("genre","李赞红");//设置该节点genre属性 xe1.SetAttribute("ISBN","2-3631-4");//设置该节点ISBN属性 XmlElement xesub1=xmlDoc.CreateElement("title"); xesub1.InnerText="CS从入门到精通";//设置文本节点 xe1.AppendChild(xesub1);//添加到<book>节点中 XmlElement xesub2=xmlDoc.CreateElement("author"); xesub2.InnerText="候捷"; xe1.AppendChild(xesub2); XmlElement xesub3=xmlDoc.CreateElement("price"); xesub3.InnerText="58.3"; xe1.AppendChild(xesub3); root.AppendChild(xe1);//添加到<bookstore>节点中 xmlDoc.Save("bookstore.xml");
//================
结果为:
<?xml version="1.0" encoding="gb2312"?> <bookstore> <book genre="fantasy" ISBN="2-3631-4"> <title>Oberon's Legacy</title> <author>Corets, Eva</author> <price>5.95</price> </book> <book genre="李赞红" ISBN="2-3631-4"> <title>CS从入门到精通</title> <author>候捷</author> <price>58.3</price> </book> </bookstore>
2、修改节点:将genre属性值为“李赞红“的节点的genre值改为“update李赞红”,将该节点的子节点48fe722b397613e801e59f453d6c9330的文本修改为“亚胜”。
XmlNodeList nodeList=xmlDoc.SelectSingleNode("bookstore").ChildNodes;//获取bookstore节点的所有子节点 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="亚胜";//则修改 break;//找到退出来就可以了 } } break; } } xmlDoc.Save("bookstore.xml");//保存。
//=================
最后结果为:
<?xml version="1.0" encoding="gb2312"?> <bookstore> <book genre="fantasy" ISBN="2-3631-4"> <title>Oberon's Legacy</title> <author>Corets, Eva</author> <price>5.95</price> </book> <book genre="update李赞红" ISBN="2-3631-4"> <title>CS从入门到精通</title> <author>亚胜</author> <price>58.3</price> </book> </bookstore>
3、删除 a43d2e45188b5491332a0b39981a5448节点的genre属性,删除 d4a88622e96e62b9214db14f87fab57b节点。
XmlNodeList xnl=xmlDoc.SelectSingleNode("bookstore").ChildNodes; foreach(XmlNode xn in xnl) { XmlElement xe=(XmlElement)xn;
if(xe.GetAttribute("genre")=="fantasy") { xe.RemoveAttribute("genre");//删除genre属性 } else if(xe.GetAttribute("genre")=="update李赞红") { xe.RemoveAll();//删除该节点的全部内容 } } xmlDoc.Save("bookstore.xml");
//====================
最后结果为:
<?xml version="1.0" encoding="gb2312"?> <bookstore> <book ISBN="2-3631-4"> <title>Oberon's Legacy</title> <author>Corets, Eva</author> <price>5.95</price> </book> <book> </book> </bookstore>
4、显示所有数据。
XmlNode xn=xmlDoc.SelectSingleNode("bookstore"); XmlNodeList xnl=xn.ChildNodes; foreach(XmlNode xnf in xnl) { XmlElement xe=(XmlElement)xnf; Console.WriteLine(xe.GetAttribute("genre"));//显示属性值 Console.WriteLine(xe.GetAttribute("ISBN")); XmlNodeList xnf1=xe.ChildNodes; foreach(XmlNode xn2 in xnf1) { Console.WriteLine(xn2.InnerText);//显示子节点点文本 } }
2前台代码:html
<%@ Page language="c#" Codebehind="Main.aspx.cs" AutoEventWireup="false" Inherits="DsAndXML.OpXMLFile.Main" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > <HTML> <HEAD> <title>Main</title> <meta name="GENERATOR" Content="Microsoft Visual Studio 7.0"> <meta name="CODE_LANGUAGE" Content="C#"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> </HEAD> <body MS_POSITIONING="GridLayout"> <form id="Main" method="post" runat="server"> <FONT face="宋体"> <asp:DataGrid id="dgShow" style="Z-INDEX: 100; LEFT: 113px; POSITION: absolute; TOP: 32px" runat="server" Width="480px" Height="178px"></asp:DataGrid> <asp:Label id="Label3" style="Z-INDEX: 111; LEFT: 187px; POSITION: absolute; TOP: 383px" runat="server" Width="120px" Height="21px">新邮件地址:</asp:Label> <asp:Label id="Label2" style="Z-INDEX: 107; LEFT: 333px; POSITION: absolute; TOP: 274px" runat="server" Width="83px" Height="21px">邮件地址:</asp:Label> <asp:Button id="btnAdd" style="Z-INDEX: 104; LEFT: 298px; POSITION: absolute; TOP: 324px" runat="server" Text="添加"></asp:Button> <asp:Button id="btnDelete" style="Z-INDEX: 103; LEFT: 199px; POSITION: absolute; TOP: 324px" runat="server" Text="删除"></asp:Button> <asp:Button id="btnChange" style="Z-INDEX: 102; LEFT: 102px; POSITION: absolute; TOP: 382px" runat="server" Text="修改"></asp:Button> <asp:Button id="btnQuery" style="Z-INDEX: 101; LEFT: 101px; POSITION: absolute; TOP: 324px" runat="server" Text="查询"></asp:Button> <asp:DropDownList id="ddlName" style="Z-INDEX: 105; LEFT: 210px; POSITION: absolute; TOP: 274px" runat="server" Width="95px" Height="78px"></asp:DropDownList> <asp:Label id="Label1" style="Z-INDEX: 106; LEFT: 100px; POSITION: absolute; TOP: 274px" runat="server" Width="83px" Height="21px">姓名:</asp:Label> <asp:Label id="lbEmail" style="Z-INDEX: 109; LEFT: 459px; POSITION: absolute; TOP: 274px" runat="server" Width="231px"></asp:Label> <asp:TextBox id="tbNewMail" style="Z-INDEX: 110; LEFT: 330px; POSITION: absolute; TOP: 381px" runat="server" Width="208px" Height="26px"></asp:TextBox></FONT> </form> </body> </HTML>
XML文件dbGuest.xml
<?xml version="1.0" standalone="yes"?> <dbGuest> <User> <Name>aaa</Name> <City>shanghai</City> <Email>aaa@263.net</Email> <Message>ok</Message> <STime>2004-07-12T00:00:00.0000000+08:00</STime> </User> <User> <Name>shaoazhd</Name> <City>beijing</City> <Email>sss@22.net</Email> <Message>afsa</Message> <STime>2004-7-12 15:07:39</STime> </User> <User> <Name>Guset</Name> <City>上海</City> <Email>sfaf@22.net</Email> </User> <User> <Name>Guset</Name> <City>上海</City> <Email>ss@22.net</Email> </User> </dbGuest> using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Xml; using System.Xml.XPath; namespace DsAndXML.OpXMLFile { /// <summary> /// Main 的摘要说明。 /// </summary> public class Main : System.Web.UI.Page { protected System.Web.UI.WebControls.Button btnQuery; protected System.Web.UI.WebControls.Button btnChange; protected System.Web.UI.WebControls.Button btnDelete; protected System.Web.UI.WebControls.Button btnAdd; protected System.Web.UI.WebControls.DropDownList ddlName; protected System.Web.UI.WebControls.Label Label1; protected System.Web.UI.WebControls.Label Label2; protected System.Web.UI.WebControls.Label lbEmail; protected System.Web.UI.WebControls.TextBox tbNewMail; protected System.Web.UI.WebControls.Label Label3; protected System.Web.UI.WebControls.DataGrid dgShow; private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 if(!IsPostBack) Bind(); } private void Bind() { DataSet ds = new DataSet(); ds.ReadXml(Server.MapPath(".\\db\\dbGuest.xml")); dgShow.DataSource = ds.Tables[0].DefaultView; dgShow.DataBind(); XmlDocument doc = new XmlDocument(); doc.Load(Server.MapPath(".\\db\\dbGuest.xml")); XmlNodeList elemList = doc.GetElementsByTagName("Name"); ddlName.Items.Clear(); for(int i=0;i<elemList.Count;i++) ddlName.Items.Add(elemList[i].InnerXml); } Web Form Designer generated code private void btnQuery_Click(object sender, System.EventArgs e) { XmlDocument doc = new XmlDocument(); doc.Load(Server.MapPath(".\\db\\dbGuest.xml")); lbEmail.Text = doc.SelectSingleNode("//User[Name='"+ddlName.SelectedItem.Text+"']").ChildNodes.Item(2).InnerText; } private void btnChange_Click(object sender, System.EventArgs e) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(Server.MapPath(".\\db\\dbGuest.xml")); XmlNodeList nodeList=xmlDoc.SelectSingleNode("dbGuest").ChildNodes;//获取dbGuest节点的所有子节点 foreach(XmlNode xn in nodeList)//遍历所有子节点 { XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型 XmlNodeList node = xe.GetElementsByTagName("Name"); if(node.Count>0) { if(node[0].InnerText==ddlName.SelectedItem.Text) { XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点 foreach(XmlNode xn1 in nls)//遍历 { XmlElement xe2=(XmlElement)xn1;//转换类型 if(xe2.Name=="Email")//如果找到 { xe2.InnerText=tbNewMail.Text;//则修改 break;//找到退出来就可以了 } } break; } } } xmlDoc.Save(Server.MapPath(".\\db\\dbGuest.xml")); Bind(); } private void btnDelete_Click(object sender, System.EventArgs e) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(Server.MapPath(".\\db\\dbGuest.xml")); XmlNodeList xnl=xmlDoc.SelectSingleNode("dbGuest").ChildNodes; foreach(XmlNode xn in xnl) { XmlElement xe=(XmlElement)xn; XmlNodeList node = xe.GetElementsByTagName("Name"); if(node.Count>0) { if(node[0].InnerText==ddlName.SelectedItem.Text) xe.RemoveAll();//删除该节点的全部内容 break; } } xmlDoc.Save(Server.MapPath(".\\db\\dbGuest.xml")); Bind(); } private void btnAdd_Click(object sender, System.EventArgs e) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(Server.MapPath(".\\db\\dbGuest.xml")); XmlNode root=xmlDoc.SelectSingleNode("dbGuest");//查找<dbGuest> XmlElement xe1=xmlDoc.CreateElement("User");//创建一个<User>节点 XmlElement xesub1=xmlDoc.CreateElement("Name"); xesub1.InnerText="Guset";//设置文本节点 xe1.AppendChild(xesub1);//添加到<User>节点中 XmlElement xesub2=xmlDoc.CreateElement("City"); xesub2.InnerText="上海"; xe1.AppendChild(xesub2); XmlElement xesub3=xmlDoc.CreateElement("Email"); xesub3.InnerText="ss@22.net"; xe1.AppendChild(xesub3); root.AppendChild(xe1);//添加到<dbGuest>节点中 xmlDoc.Save(Server.MapPath(".\\db\\dbGuest.xml")); Bind(); } } }
以上就是XML 增、删、改和查示例的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Rssfeedsusexmltosyndicatecontent; parsingtheminvolvesloadingxml, navigatingitssstructure, andextractingdata.applicationsincludeBuildingNewsaggregatorsandtrackingpodcastepisodes.

Dokumen RSS berfungsi dengan menerbitkan kemas kini kandungan melalui fail XML, dan pengguna melanggan dan menerima pemberitahuan melalui pembaca RSS. 1. Penerbit Kandungan mencipta dan mengemas kini dokumen RSS. 2. Pembaca RSS kerap mengakses dan memasangkan fail XML. 3. Pengguna melayari dan membaca kandungan yang dikemas kini. Contoh Penggunaan: Langgan suapan RSS TechCrunch, hanya salin pautan ke pembaca RSS.

Langkah -langkah untuk membina RSSFeed menggunakan XML adalah seperti berikut: 1. Buat elemen akar dan tetapkan versi; 2. Tambah elemen saluran dan maklumat asasnya; 3. Tambah elemen kemasukan, termasuk tajuk, pautan dan keterangan; 4. Tukar struktur XML ke rentetan dan outputnya. Dengan langkah -langkah ini, anda boleh membuat RSSFeed yang sah dari awal dan meningkatkan fungsinya dengan menambahkan elemen tambahan seperti tarikh pelepasan dan maklumat pengarang.

Langkah -langkah untuk membuat dokumen RSS adalah seperti berikut: 1. Tulis dalam format XML, dengan elemen akar, termasuk unsur -unsur. 2. Tambah, dan sebagainya. Unsur untuk menerangkan maklumat saluran. 3. Tambah elemen, masing -masing mewakili kemasukan kandungan, termasuk ,,,,,,,,,,,. 4. Secara pilihan menambah dan elemen untuk memperkayakan kandungan. 5. Pastikan format XML betul, gunakan alat dalam talian untuk mengesahkan, mengoptimumkan prestasi dan menyimpan kandungan yang dikemas kini.

Peranan teras XML dalam RSS adalah untuk menyediakan format data standard dan fleksibel. 1. Ciri -ciri bahasa dan markup XML menjadikannya sesuai untuk pertukaran data dan penyimpanan. 2. RSS menggunakan XML untuk membuat format piawai untuk memudahkan perkongsian kandungan. 3. Permohonan XML dalam RSS termasuk unsur -unsur yang menentukan kandungan suapan, seperti tajuk dan tarikh pelepasan. 4. Kelebihan termasuk penyeragaman dan skalabiliti, dan cabaran termasuk keperluan sintaks dokumen dan ketat. 5. Amalan terbaik termasuk mengesahkan kesahihan XML, memastikan ia mudah, menggunakan CDATA, dan sentiasa mengemas kini.

Rssfeedsarexmldocumentsedforcontentaggregationanddistribution.totransformthemintoreadableContent: 1) ParsethexmlusingLibrariesLikeFeedParserinpython.2)

JSONFEED adalah alternatif RSS berasaskan JSON yang mempunyai kesederhanaan kelebihan dan kemudahan penggunaannya. 1) JSONFEED menggunakan format JSON, yang mudah dihasilkan dan dihuraikan. 2) Ia menyokong generasi dinamik dan sesuai untuk pembangunan web moden. 3) Menggunakan JSONFEED boleh meningkatkan kecekapan pengurusan kandungan dan pengalaman pengguna.

Bagaimana untuk membina, mengesahkan dan menerbitkan RSSFeeds? 1. Membina: Gunakan skrip python untuk menghasilkan RSSFeed, termasuk Tajuk, Pautan, Keterangan dan Tarikh Siaran. 2. Pengesahan: Gunakan feedvalidator.org atau skrip Python untuk memeriksa sama ada RSSFEED mematuhi piawaian RSS2.0. 3. Terbitkan: Muat naik fail RSS ke pelayan, atau gunakan Flask untuk menjana dan menerbitkan RSSFeed secara dinamik. Melalui langkah -langkah ini, anda boleh mengurus dan berkongsi kandungan dengan berkesan.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

VSCode Windows 64-bit Muat Turun
Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa