C#读取并写入XML文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#读取并写入XML文件相关的知识,希望对你有一定的参考价值。

XML(可扩展标记语言)文件,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。

XML与html的设计区别是:XML 被设计为传输和存储数据,其焦点是数据的内容。而HTML 被设计用来显示数据,其焦点是数据的外观。HTML 旨在显示信息,而 XML 旨在传输信息。

XML和HTML语法区别:HTML的标记不是所有的都需要成对出现,XML则要求所有的标记必须成对出现;HTML标记不区分大小写,XML则大小敏感,即区分大小写。

在Asp.Net中我们需要通过C#来对已有的XML文件进行读取并写入信息,代码如下:

//创建实例,读取XML
 XmlDocument xmldoc = new XmlDocument();
 string path = HttpContext.Current.Server.MapPath("../XMLFile/ChatInfor.xml");
 xmldoc.Load(path);
 //查找根节点
   XmlNode chat = xmldoc.SelectSingleNode("Chat");
 //创建节点
   XmlElement infor = xmldoc.CreateElement("infor");
 //设置属性
   infor.SetAttribute("id", mid);
 
 XmlElement xuser = xmldoc.CreateElement("userid");
 //插入文本
   xuser.InnerText = uid;
 infor.AppendChild(xuser);
 
 XmlElement xdate = xmldoc.CreateElement("date");
 xdate.InnerText = date;
 infor.AppendChild(xdate);
 
 XmlElement xmess = xmldoc.CreateElement("content");
 xmess.InnerText = mess;
 infor.AppendChild(xmess);
 
 //存入根节点,保存文件
   chat.AppendChild(infor);
 xmldoc.Save(path);

PS:上段代码中的mid,uid,date,mess皆为传递的参数; 

所存储的XML文件格式如下:

<?xml version="1.0" encoding="utf-8"?>
<Chat>
  <infor id="71b6384d-0dad-62eb-c952-c718d33b3374">
    <userid>2</userid>
    <date>2013-03-13 12:30:01</date>
    <content>大家好!</content>
  </infor>
  <infor id="a179c895-9521-150e-2548-1872cfd2fd93">
    <userid>1</userid>
    <date>2013-03-13 12:30:50</date>
    <content>你好!</content>
  </infor>
  <infor id="2c0f2313-13af-f71b-f1a2-8b2e188d5536">
    <userid>2</userid>
    <date>2013-05-27 15:05:23</date>
    <content>1235364564</content>
  </infor>
  <infor id="d508830e-658f-2adf-88f6-4ef6d9295a88">
    <userid>1</userid>
    <date>2013-05-27 15:05:30</date>
    <content>啊啊啊啊</content>
  </infor>
  <infor id="37cf60ad-76a6-2983-4a82-bfea197201cd">
    <userid>3</userid>
    <date>2013-05-27 15:05:35</date>
    <content>灌灌灌灌灌</content>
  </infor>
  </Chat>

 

以上是关于C#读取并写入XML文件的主要内容,如果未能解决你的问题,请参考以下文章

读取/写入使用 csd 生成的 xml

C# 如何读取xml文件并输出信息到label上

读取和写入 XML 文件的异步方法

写入/读取文本文件 (C#)

PHP读取XML并写入数据库

C# XML 读取xml文件内容并输出到控制台