c#读写XML文件实例代码

  

c#史上最简单读写xml文件方式,创建控制台应用程序赋值代码,就可以运行,需要改动,请自行调整

        使用系统;   使用System.Collections.Generic;   使用先;   使用来;   使用text;   使用System.Threading.Tasks;   使用System.Xml;      名称空间ConsoleApp1   {   类项目   {   公共常量字符串xmlPath=癷nfo.xml”;      静态void Main (string [] args)   {      IDictionary<字符串,List在();      信息。Add(“伊万”,新的List () {" 123 ", " 456 "});      SaveXML(信息);      ReadXML ();   Console.ReadKey ();   }      公共静态孔隙SaveXML (IDictionary<字符串,List比;信息)   {   如果(信息==null | |信息。数==0)   {   返回;   }      XmlDocument xmlDoc=new XmlDocument ();      XmlDeclaration 12月=xmlDoc.CreateXmlDeclaration (“1.0”,“utf - 8”, null);      xmlDoc.AppendChild(12月);      XmlElement _infos=xmlDoc.CreateElement(“信息”);      foreach (KeyValuePair<字符串,List比;项信息)   {   XmlElement信息=xmlDoc.CreateElement(“信息”);      XmlElement name=xmlDoc.CreateElement (file1);   的名字。InnerText=item.Key实现;      info.AppendChild(名称);      XmlNode文件列表=xmlDoc.CreateElement(“文件列表”);      info.AppendChild(文件列表);      在item.Value foreach(字符串)   {   XmlElement提起=xmlDoc.CreateElement(“提交”);   提起。InnerText=实现数量;      filelist.AppendChild(提交);   }      _infos.AppendChild(信息);   }      xmlDoc.AppendChild (_infos);      xmlDoc.Save (xmlPath);   }      公共静态IDictionary<字符串,List比;ReadXML ()   {   IDictionary<字符串,List在();      如果(File.Exists (xmlPath))   {   XmlDocument xmlDoc=new XmlDocument ();      xmlDoc.Load (xmlPath);      XmlNode xn=xmlDoc.SelectSingleNode(“信息”);      XmlNodeList xnl=xn.ChildNodes;      foreach (XmlNode xnf xnl)   {   XmlElement xe=(XmlElement) xnf;      XmlNode nameNode=xe.SelectSingleNode (file1);      字符串名称=nameNode.InnerText;   Console.WriteLine(名称);   XmlNode文件列表=xe.SelectSingleNode(“文件列表”);      List列表=new List ();      foreach (filelist.ChildNodes XmlNode项)   {   list.Add (item.InnerText);   }      信息。添加(名称、列表);   }   }      返回信息;   }   }   }      

  

实例代码

        昏暗的domxmldocument system.xml.xmldocument   昏暗的tmppath=apptempfilepath作为字符串   昏暗的xmlfile作为字符串=tmppath + " \ testxml.xml "   “窗体加载事件   私人子testxml_load(按值传递发送方系统。对象,按值传递e system.eventargs)处理mybase.load   “读xml过程测试通过   昏暗的domxmldocument system.xml.xmldocument   昏暗的tmppath=apptempfilepath作为字符串   昏暗的xmlfile作为字符串=tmppath + " \ testxml.xml "   system.xml昏暗的读者。xmlreader=什么   试一试   读者=new xml.xmltextreader (xmlfile)   的读者。   虽然reader.read   me.lboxxml.items.add (reader.name + reader.value)   结束时   捕获作为交货异常   对话框(ex.message)   最后   如果不是(读者是什么)   reader.close ()   如果   最后试一试   终止子   “载入xml事件   私人子btnxmlload_click(按值传递发送方系统。对象,按值传递e system.eventargs)处理btnxmlload.click   “me.lboxxml.items.clear ()   “读xml过程测试通过   “system.xml昏暗的读者。xmlreader=什么   “试一试   “读者=new xml.xmltextreader (xmlfile)   虽然reader.read   “me.lboxxml.items.add (reader.name +“:”+ reader.value)   “而终结   “赶交货异常   ”对话框(ex.message)   “最后   如果不是(读者是什么)   “reader.close ()   “如果终结   的尝试   昏暗的ds作为新的数据集   试一试   “如果直接使用ds做数据源则不会展开datagrid,用dv则能直接显示正确。   ds.readxml (xmlfile)   昏暗的结核病作为数据表   昏暗的dv dataview   结核?ds.tables (0)   dv=new dataview (tb)   datagrid1。数据源=dv   “datagrid1。数据成员=" testxmlmember "   “datagrid1。数据成员=" employeefname "   “暗dxd新xmldatadocument   捕获作为交货异常   对话框(ex.message.tostring)   最后试一试   终止子   “保存新xml内建容事件   私人子btnsavenew_click(按值传递发送方系统。对象,按值传递e system.eventargs)处理btnsavenew.click   昏暗的mytw \ testxmlwrite新xmltextwriter (tmppath +”。xml”,没有什么)   mytw.writestartdocument ()   mytw。格式化=formatting.indented   mytw.writestartelement(“团队”)   mytw.writestartelement(“球员”)   mytw。writeattributestring(“名称”,“乔治zip”)   mytw。writeattributestring(“位置”、“qb”)   mytw。writeelementstring(“昵称”、“活泼的”)   mytw。writeelementstring (“jerseynumber xmlconvert.tostring (7))   mytw.writeendelement ()   mytw.writeendelement ()   mytw.writeenddocument ()   mytw.close ()   子

c#读写XML文件实例代码