C# 創(chuàng)建,讀取,寫入XML文件
Xml文件如下:
<?xml version="1.0" encoding="utf-8"?> <Advertisements> <Ad> <ImageUrl>001.jpg</ImageUrl> <NavigateUrl>001.aspx</NavigateUrl> <Impressions>10</Impressions> <Keyword>gucas01</Keyword> </Ad> <Ad> <ImageUrl>002.jpg</ImageUrl> <NavigateUrl>002.aspx</NavigateUrl> <Impressions>20</Impressions> <Keyword>gucas02</Keyword> </Ad> <Ad> <ImageUrl>003.jpg</ImageUrl> <NavigateUrl>003.aspx</NavigateUrl> <Impressions>30</Impressions> <Keyword>gucas03</Keyword> </Ad> <Ad> <ImageUrl>004.jpg</ImageUrl> <NavigateUrl>004.aspx</NavigateUrl> <Impressions>40</Impressions> <Keyword>gucas04</Keyword> </Ad> <Ad> <ImageUrl>005.jpg</ImageUrl> <NavigateUrl>005.aspx</NavigateUrl> <Impressions>50</Impressions> <Keyword>gucas05</Keyword> </Ad> <Ad> <ImageUrl>google.gif</ImageUrl> <NavigateUrl>http://www.google.com</NavigateUrl> <Impressions>30</Impressions> <Keyword>google</Keyword> </Ad> </Advertisements>
對XML文件的操作
/// <summary> /// 創(chuàng)建XML文件 /// </summary> /// <param name="filename"></param> public void CreateXmlFile(string filename) { XmlDocument xmldoc = new XmlDocument(); XmlNode node; node = xmldoc.CreateXmlDeclaration("1.0", "utf-8", null); xmldoc.AppendChild(node); XmlNode root = xmldoc.CreateElement("Users"); xmldoc.AppendChild(root); CreateNode(xmldoc, root, "UserName", "zhengyd"); CreateNode(xmldoc, root, "Email", "zhengyd@gucas.ac,cn"); CreateNode(xmldoc, root, "Url", "www.gucas.an,cn"); CreateNode(xmldoc, root, "Age", "27"); try { xmldoc.Save(Server.MapPath(filename)); Response.Write("創(chuàng)建XML文件myxml.xml成功!"); } catch (Exception ex) { Response.Write(ex.Message); } } /// <summary> /// 寫入XML文件 /// </summary> /// <param name="file"></param> public void WriteXmlFile(string file) { XmlDocument xmdoc = new XmlDocument(); try { xmdoc.Load(Server.MapPath(file)); XmlNode root = xmdoc.SelectSingleNode("Advertisements"); if (root != null) { XmlNode node = xmdoc.CreateNode(XmlNodeType.Element, "Ad", null); CreateNode(xmdoc, node, "ImageUrl", "google.gif"); CreateNode(xmdoc, node, "NavigateUrl", "http://www.google.com"); CreateNode(xmdoc, node, "Impressions", "30"); CreateNode(xmdoc, node, "Keyword", "google"); root.AppendChild(node); } xmdoc.Save(Server.MapPath(file)); Response.Write("寫入XML文件XMLFile.xml成功。<br>"); } catch(Exception ex) { Response.Write(ex.Message); } } /// <summary> /// 創(chuàng)建節(jié)點 /// </summary> /// <param name="xmldoc"></param> /// <param name="parentnode"></param> /// <param name="name"></param> /// <param name="value"></param> public void CreateNode(XmlDocument xmldoc, XmlNode parentnode, string name, string value) { XmlNode node = xmldoc.CreateNode(XmlNodeType.Element, name, null); node.InnerText = value; parentnode.AppendChild(node); } /// <summary> /// 讀取XML文件 /// </summary> /// <param name="file"></param> private void ReadFile(string file) { XmlDocument xmldoc = new XmlDocument(); try { xmldoc.Load(Server.MapPath(file)); XmlNode node = xmldoc.SelectSingleNode("Advertisements"); if (node != null) { TreeNode root = new TreeNode(); root.Text = node.Name; tvXml.Nodes.Add(root); foreach (XmlNode xnode in xmldoc.SelectNodes("Advertisements/Ad")) { TreeNode tnode = new TreeNode(); tnode.Text = Server.HtmlEncode("<" + xnode.Name + ">"); root.ChildNodes.Add(tnode); foreach (XmlNode xcnode in xnode.ChildNodes) { TreeNode tcnode = new TreeNode(); tcnode.Text = Server.HtmlEncode("<" + xcnode.Name + ">" + xcnode.InnerText + "</" + xcnode.Name + ">"); tnode.ChildNodes.Add(tcnode); } TreeNode ttnode = new TreeNode(); ttnode.Text = Server.HtmlEncode("</" + xnode.Name + ""); root.ChildNodes.Add(ttnode); } TreeNode tpnode = new TreeNode(); tpnode.Text = Server.HtmlEncode("</" + node.Name + ">"); tvXml.Nodes.Add(tpnode); } } catch (Exception ex) { Response.Write(ex.Message); } }
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持我們!
上一篇:C#實現(xiàn)Windows Form調(diào)用R進行繪圖與顯示的方法
欄 目:C#教程
下一篇:C#執(zhí)行存儲過程并將結(jié)果填充到GridView的方法
本文標(biāo)題:C# 創(chuàng)建,讀取,寫入XML文件
本文地址:http://mengdiqiu.com.cn/a1/C_jiaocheng/5863.html
您可能感興趣的文章
- 01-10C#實現(xiàn)讀取注冊表監(jiān)控當(dāng)前操作系統(tǒng)已安裝軟件變化的方法
- 01-10winform實現(xiàn)創(chuàng)建最前端窗體的方法
- 01-10C#實現(xiàn)多線程寫入同一個文件的方法
- 01-10C#動態(tài)創(chuàng)建button的方法
- 01-10C#實現(xiàn)讀取被進程占用的文件實現(xiàn)方法
- 01-10深入淺出23種設(shè)計模式
- 01-10winform創(chuàng)建不規(guī)則窗體的方法
- 01-10C#動態(tài)創(chuàng)建Access數(shù)據(jù)庫及密碼的方法
- 01-10C#實現(xiàn)在啟動目錄創(chuàng)建快捷方式的方法
- 01-10C# readnodefile()不能讀取帶有文件名為漢字的osg文件解決方法


閱讀排行
本欄相關(guān)
- 01-10C#通過反射獲取當(dāng)前工程中所有窗體并
- 01-10關(guān)于ASP網(wǎng)頁無法打開的解決方案
- 01-10WinForm限制窗體不能移到屏幕外的方法
- 01-10WinForm繪制圓角的方法
- 01-10C#實現(xiàn)txt定位指定行完整實例
- 01-10WinForm實現(xiàn)仿視頻 器左下角滾動新
- 01-10C#停止線程的方法
- 01-10C#實現(xiàn)清空回收站的方法
- 01-10C#通過重寫Panel改變邊框顏色與寬度的
- 01-10C#實現(xiàn)讀取注冊表監(jiān)控當(dāng)前操作系統(tǒng)已
隨機閱讀
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10C#中split用法實例總結(jié)
- 04-02jquery與jsp,用jquery
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-11ajax實現(xiàn)頁面的局部加載
- 01-10delphi制作wav文件的方法