![C# XML操作 代碼大全(讀XML,寫XML,更新,刪除節(jié)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/3619917b-d80e-4cc1-9068-a24e93f15fe5/3619917b-d80e-4cc1-9068-a24e93f15fe51.gif)
![C# XML操作 代碼大全(讀XML,寫XML,更新,刪除節(jié)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/3619917b-d80e-4cc1-9068-a24e93f15fe5/3619917b-d80e-4cc1-9068-a24e93f15fe52.gif)
![C# XML操作 代碼大全(讀XML,寫XML,更新,刪除節(jié)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/3619917b-d80e-4cc1-9068-a24e93f15fe5/3619917b-d80e-4cc1-9068-a24e93f15fe53.gif)
![C# XML操作 代碼大全(讀XML,寫XML,更新,刪除節(jié)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/3619917b-d80e-4cc1-9068-a24e93f15fe5/3619917b-d80e-4cc1-9068-a24e93f15fe54.gif)
![C# XML操作 代碼大全(讀XML,寫XML,更新,刪除節(jié)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/3619917b-d80e-4cc1-9068-a24e93f15fe5/3619917b-d80e-4cc1-9068-a24e93f15fe55.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1、插入節(jié)點 往節(jié)點中插入一個節(jié)點: 復(fù)制代碼 代碼如下:XmlDocument xmlDoc=new XmlDocument(; xmlDoc.Load(bookstore.xml; XmlNode root=xmlDoc.SelectSingleNode(bookstore;/查找 XmlElement xe1=xmlDoc.CreateElement(book;/創(chuàng)建一個節(jié)點 xe1.SetAttribute(genre,李贊紅;/設(shè)置該節(jié)點genre屬性 xe1.SetAttribute(ISBN,2-3631-4;/設(shè)置該節(jié)點ISBN屬性 XmlElement xesub1=xmlD
2、oc.CreateElement(title; xesub1.InnerText=CS從入門到精通;/設(shè)置文本節(jié)點 xe1.AppendChild(xesub1;/添加到節(jié)點中 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;/添加到節(jié)
3、點中 xmlDoc.Save(bookstore.xml; 結(jié)果為: Corets, Eva 5.95 候捷 58.3 2、修改節(jié)點: 將genre屬性值為“李贊紅“的節(jié)點的genre值改為“update李贊紅”,將該節(jié)點的子節(jié)點的文本修改為“亞勝”。 復(fù)制代碼 代碼如下:XmlNodeList nodeList=xmlDoc.SelectSingleNode(bookstore.ChildNodes;/獲取bookstore節(jié)點的所有子節(jié)點 foreach(XmlNode xn in nodeList/遍歷所有子節(jié)點 XmlElement xe=(XmlElementxn;/將子節(jié)點類型轉(zhuǎn)換
4、為XmlElement類型 if(xe.GetAttribute(genre=李贊紅/如果genre屬性值為“李贊紅” xe.SetAttribute(genre,update李贊紅;/則修改該屬性為“update李贊紅” XmlNodeList nls=xe.ChildNodes;/繼續(xù)獲取xe子節(jié)點的所有子節(jié)點 foreach(XmlNode xn1 in nls/遍歷 XmlElement xe2=(XmlElementxn1;/轉(zhuǎn)換類型 if(xe2.Name=author/如果找到 xe2.InnerText=亞勝;/則修改 break;/找到退出來就可以了 break; xmlDo
5、c.Save(bookstore.xml;/保存。 最后結(jié)果為: Corets, Eva 5.95 亞勝 58.3 3、刪除節(jié)點 節(jié)點的genre屬性,刪除 節(jié)點。 復(fù)制代碼 代碼如下:XmlNodeList xnl=xmlDoc.SelectSingleNode(bookstore.ChildNodes; foreach(XmlNode xn in xnl XmlElement xe=(XmlElementxn; if(xe.GetAttribute(genre=fantasy xe.RemoveAttribute(genre;/刪除genre屬性 else if(xe.GetAttribu
6、te(genre=update李贊紅 xe.RemoveAll(;/刪除該節(jié)點的全部內(nèi)容 xmlDoc.Save(bookstore.xml; 最后結(jié)果為: Corets, Eva 5.95 4、顯示所有數(shù)據(jù)。 復(fù)制代碼 代碼如下:XmlNode xn=xmlDoc.SelectSingleNode(bookstore; XmlNodeList xnl=xn.ChildNodes; foreach(XmlNode xnf in xnl XmlElement xe=(XmlElementxnf; Console.WriteLine(xe.GetAttribute(genre;/顯示屬性值 Con
7、sole.WriteLine(xe.GetAttribute(ISBN; XmlNodeList xnf1=xe.ChildNodes; foreach(XmlNode xn2 in xnf1 Console.WriteLine(xn2.InnerText;/顯示子節(jié)點點文本 loading. 一個通過DataSet操作XML的類(源代碼) 復(fù)制代碼 代碼如下:using System; using System.Data; using System.Xml; /* / 作者: 明天去要飯 / QICQ: 305725744 / .Net群: 6370988 /* namespace YSTR
8、P.Common / / OperateXmlByDataSet 的摘要說明。 / public class OperateXmlByDataSet public OperateXmlByDataSet( / / TODO: 在此處添加構(gòu)造函數(shù)邏輯 / #region GetDataSetByXml / / 讀取xml直接返回DataSet / / xml文件相對路徑 / public static DataSet GetDataSetByXml(string strXmlPath try DataSet ds = new DataSet(; ds.ReadXml(GetXmlFullPath
9、(strXmlPath; return ds; return null; catch(Exception ex return null; #endregion #region GetDataViewByXml / / 讀取Xml返回一個經(jīng)排序或篩選后的DataView / / / 篩選條件,如:name = kgdiwss / 排序條件,如:Id desc / public static DataView GetDataViewByXml(string strXmlPath,string strWhere,string strSort try DataSet ds = new DataSet(
10、; ds.ReadXml(GetXmlFullPath(strXmlPath; DataView dv = new DataView(ds.Tables0; if(strSort != null dv.Sort = strSort; if(strWhere != null dv.RowFilter = strWhere; return dv; catch(Exception return null; #endregion #region WriteXmlByDataSet / / 向Xml文件插入一行數(shù)據(jù) / / xml文件相對路徑 / 要插入行的列名數(shù)組,如:string Columns =
11、 name,IsMarried; / 要插入行每列的值數(shù)組,如:string ColumnValue=明天去要飯,false; / 成功返回true,否則返回false public static bool WriteXmlByDataSet(string strXmlPath,string Columns,string ColumnValue try /根據(jù)傳入的XML路徑得到.XSD的路徑,兩個文件放在同一個目錄下 string strXsdPath = strXmlPath.Substring(0,strXmlPath.IndexOf(. + .xsd; DataSet ds = new
12、 DataSet(; /讀xml架構(gòu),關(guān)系到列的數(shù)據(jù)類型 ds.ReadXmlSchema(GetXmlFullPath(strXsdPath; ds.ReadXml(GetXmlFullPath(strXmlPath; DataTable dt = ds.Tables0; /在原來的表格基礎(chǔ)上創(chuàng)建新行 DataRow newRow = dt.NewRow(; /循環(huán)給一行中的各個列賦值 for(int i=0; i 0 for(int i=0; i ds.Tables0.Rows.Count; i+ /如果當(dāng)前記錄為符合Where條件的記錄 if(ds.Tables0.RowsistrWhe
13、reColumnName.ToString(.Trim(.Equals(strWhereColumnValue /循環(huán)給找到行的各列賦新值 for(int j=0; j 0 /刪除符號條件的行 ds.Tables0.RowsiDeleteRow.Delete(; ds.WriteXml(GetXmlFullPath(strXmlPath; return true; catch(Exception return false; #endregion #region DeleteXmlRows / / 刪除strColumn列中值為ColumnValue的行 / / xml相對路徑 / 列名 / s
14、trColumn列中值為ColumnValue的行均會被刪除 / public static bool DeleteXmlRows(string strXmlPath,string strColumn,string ColumnValue try DataSet ds = new DataSet(; ds.ReadXml(GetXmlFullPath(strXmlPath; /先判斷行數(shù) if(ds.Tables0.Rows.Count 0 /判斷行多還是刪除的值多,多的for循環(huán)放在里面 if(ColumnValue.Length ds.Tables0.Rows.Count for(int
15、i=0; i ds.Tables0.Rows.Count; i+ for(int j=0; j ColumnValue.Length; j+ if(ds.Tables0.RowsistrColumn.ToString(.Trim(.Equals(ColumnValuej ds.Tables0.Rowsi.Delete(; else for(int j=0; j ColumnValue.Length; j+ for(int i=0; i 0 /移除所有記錄 ds.Tables0.Rows.Clear(; /重新寫入,這時XML文件中就只剩根節(jié)點了 ds.WriteXml(GetXmlFullPath(strXmlPath; return true; catch
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 門診輸液室護(hù)士工作總結(jié)
- 幼教行業(yè)助理工作總結(jié)
- 電影行業(yè)技巧提升總結(jié)
- 國家課程:《機(jī)械制造裝備設(shè)計》第一章
- 2025-2030全球管式爐行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球工業(yè)應(yīng)用移動機(jī)器人行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國電動低升降托盤車行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國塑料3D打印長絲行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025-2030全球工業(yè)膠囊填充機(jī)行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國微米級氧化鋯行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2024年北京東城社區(qū)工作者招聘筆試真題
- 《敏捷項目管理》課件
- 統(tǒng)編版(2024新版)七年級上學(xué)期道德與法治期末綜合測試卷(含答案)
- 黑龍江省哈爾濱市2024屆中考數(shù)學(xué)試卷(含答案)
- 前程無憂測評題庫及答案
- 高三日語一輪復(fù)習(xí)助詞「と」的用法課件
- 物業(yè)管理服務(wù)房屋及公用設(shè)施維修養(yǎng)護(hù)方案
- 五年級上冊小數(shù)遞等式計算200道及答案
- 帶拼音生字本模板(可A4打印)
- 超高大截面框架柱成型質(zhì)量控制
- 森林法講解課件
評論
0/150
提交評論