温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#操作xml文件的方法

发布时间:2021-07-16 01:08:02 来源:亿速云 阅读:110 作者:chen 栏目:编程语言

本篇内容介绍了“C#操作xml文件的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

C#操作xml文件实例是如何的呢?让我们先看看问题:

已知有一个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﹥

C#操作xml文件实例1、

往﹤bookstore﹥节点中插入一个﹤book﹥节点:

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");   //================

C#操作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﹥

C#操作xml文件实例2、

修改节点:将genre属性值为“李赞红“的节点的genre值改为“update李赞红”,将该节点的子节点﹤author﹥的文本修改为“亚胜”。

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");//保存。   //=================

C#操作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﹥

C#操作xml文件实例3、

删除

﹤book genre="fantasy"   ISBN="2-3631-4"﹥节点的genre属性,删除   ﹤book genre="update李赞红" ISBN="2-3631-4"﹥节点。   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");   //====================

C#操作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﹥

C#操作xml文件实例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);//显示子节点点文本  }  }

“C#操作xml文件的方法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI