溫習一下對xml的簡單操做,貼出來收藏 xml文件格式:
?xmlversion="1.0"encoding="utf-8"? students student id4/id name肖品4/name age21/age /student student id5/id name肖品5/name age22/age /student student id1/id name肖品1/name age18/age /student student id2/id name肖品2/name age19/age /student student id3/id name肖品3/name age20/age /student /students XMLtoDataSet.aspx 這個頁面包含了增刪改查
usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Web; usingSystem.Web.UI; usingSystem.Web.UI.WebControls; usingSystem.Data; usingSystem.Xml; usingSystem.IO; namespaceXMLWEB { publicpartialclassXMLtoDataSet:System.Web.UI.Page { protectedvoidPage_Load(objectsender,EventArgse) { if(!IsPostBack) { LoadGridView(); } } privatevoidLoadGridView() { //轉換一個XML文件(本地\網絡都可)爲一個DataSet DataSetds=newDataSet(); //ds=XMLDataSetConverter.ConvertXMLFileToDataSet(Server.MapPath("xmltodataset.xml")); //ds=XMLDataSetConverter.ConvertXMLFileToDataSet("http://news.baidu.com/n?cmd=1class=sportnewstn=rss"); //foreach(DataRowrowinds.Tables[0].Rows) //{ //stringname=row["name"].ToString(); //stringage=row["age"].ToString(); //} StringReadersreader=null; XmlTextReaderxtreader=null; try { XmlDocumentdoc=newXmlDocument(); doc.Load(Server.MapPath("xmltodataset.xml")); sreader=newStringReader(doc.InnerXml); xtreader=newXmlTextReader(sreader); ds.ReadXml(xtreader); } catch(Exception) { throw; } finally { xtreader.Close(); sreader.Close(); } this.GridView1.DataSource=ds.Tables[0]; this.GridView1.DataBind(); } protectedvoidButton1_Click(objectsender,EventArgse) { this.Add(); } protectedvoidButton2_Click(objectsender,EventArgse) { this.Update(); } protectedvoidGridView1_RowCommand(objectsender,GridViewCommandEventArgse) { if(e.CommandName=="edi") { //經過ID獲取對象,給控件賦值 string[]entity=this.GetEntity(e.CommandArgument.ToString()).Split('|'); this.TextBox4.Text=entity[0]; this.TextBox5.Text=entity[1]; this.TextBox6.Text=entity[2]; } elseif(e.CommandName=="del") { //經過ID刪除對象 this.Delete(e.CommandArgument.ToString()); } } privatevoidAdd() { stringid=this.TextBox1.Text; stringname=this.TextBox2.Text; stringage=this.TextBox3.Text; //在第一個前面插入一條信息 XmlDocumentdoc=newXmlDocument(); doc.Load(Server.MapPath("xmltodataset.xml")); XmlNodestudents=doc.SelectSingleNode("students"); XmlElementstudent=doc.CreateElement("student"); //student.SetAttribute("id",id); XmlElementele_id=doc.CreateElement("id"); ele_id.InnerText=id; student.AppendChild(ele_id); XmlElementele_name=doc.CreateElement("name"); ele_name.InnerText=name; student.AppendChild(ele_name); XmlElementele_age=doc.CreateElement("age"); ele_age.InnerText=age; student.AppendChild(ele_age); students.InsertBefore(student,students.FirstChild); doc.Save(Server.MapPath("xmltodataset.xml")); //從新加載GridView LoadGridView(); this.TextBox1.Text=""; this.TextBox2.Text=""; this.TextBox3.Text=""; } privatevoidDelete(stringid) { //經過ID獲取信息 XmlDocumentdoc=newXmlDocument(); doc.Load(Server.MapPath("xmltodataset.xml")); XmlNodestudents=doc.SelectSingleNode("students"); foreach(XmlNodestudentinstudents.ChildNodes) { XmlNodenode_id=student.FirstChild; if(node_id.InnerText==id) { student.ParentNode.RemoveChild(student); } } doc.Save(Server.MapPath("xmltodataset.xml")); LoadGridView(); } privatevoidUpdate() { stringid=this.TextBox4.Text; stringname=this.TextBox5.Text; stringage=this.TextBox6.Text; //經過ID獲取信息,而後更改信息 XmlDocumentdoc=newXmlDocument(); doc.Load(Server.MapPath("xmltodataset.xml")); XmlNodestudents=doc.SelectSingleNode("students"); foreach(XmlNodestudentinstudents.ChildNodes) { XmlNodetemp_node=student.FirstChild; if(temp_node.InnerText==id) { //第一種方式 //student.RemoveAll(); //XmlElementele_id=doc.CreateElement("id"); //ele_id.InnerText=id; //student.AppendChild(ele_id); //XmlElementele_name=doc.CreateElement("name"); //ele_name.InnerText=name; //student.AppendChild(ele_name); //XmlElementele_age=doc.CreateElement("age"); //ele_age.InnerText=age; //student.AppendChild(ele_age); //第二種方式 student.ChildNodes[0].InnerText=id; student.ChildNodes[1].InnerText=name; student.ChildNodes[2].InnerText=age; doc.Save(Server.MapPath("xmltodataset.xml")); break; } } LoadGridView(); } privatestringGetEntity(stringid) { stringentity=""; XmlDocumentdoc=newXmlDocument(); doc.Load(Server.MapPath("xmltodataset.xml")); XmlNodestudents=doc.SelectSingleNode("students"); foreach(XmlNodestudentinstudents.ChildNodes) { XmlNodetemp_node=student.FirstChild; if(temp_node.InnerText==id) { foreach(XmlNodeiteminstudent.ChildNodes) { entity+=item.InnerText+"|"; } entity=entity.Substring(0,entity.Length-1); break; } } returnentity; } } } 項目示例下載:XMLDemo.rar