当前位置:首页 > Windows程序 > 正文

C# XML相关操作

2021-03-19 Windows程序

XML是一种意见单文本格式存储数据的方式,这意味着它可以被任何计算机读取。XML中完整的数据集就是XML文档。

在名称空间System.Xml下面大部分类型都是用来支持DOM处理模型的。其中很多类型配合起来共同组织成XMLDOM,,XMLDOM是一种很典型的文档对象模型的应用。文档对象模型是一种比较高级的软件设计模式,我会在今后的课程中详细介绍文档对象模型这种软件设计模式。

类名   说明  
XmlNode   这个类表示文档的一个节点,它是许多类的基类。如果这个节点表示XML文档的根,就可以从它导航文档任意位置。  
XmlDocument   扩展了XmlNode类,但通常是使用XML的第一个对象,因为这个类用于加载磁盘或其他地方的数据,并在这些位置保存数据  
XmlElement   表示XML文档的一个元素。它派生于XmlLinkedNode,XmlLinkedNode派生于XmlNode  
XmlAttribute   表示一个特性,与XmlDocument类一样,它也派生于XmlNode类  
XmlText   表示开始标记于结束标记之间的文本  
XmlComment   表示一种特殊的类型的节点,这种节点不是文档的一部分,但位阅读器提供文档各部分信息  
XmlNodeList   表示一个节点的集合  

创建一个XML文档

XmlDocument xmlDoc = new XmlDocument();
            ////创建Xml声明部分,即<?xml version="1.0" encoding="utf-8" ?>
            XmlDeclaration Declaration = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", null);

xmlDoc.AppendChild(Declaration);
            ////创建根节点
            XmlNode rootNode = xmlDoc.CreateElement("root");


            ////创建student子节点
            XmlNode testPointNode = xmlDoc.CreateElement("testPoint");
            创建一个属性
          XmlAttribute testPointID = xmlDoc.CreateAttribute("TestPointID");
           testPointID.Value = "1";

XmlAttribute caseID = xmlDoc.CreateAttribute("CaseId");
           caseID.Value = "TEST_0001";

XmlAttribute name = xmlDoc.CreateAttribute("Name");
            name.Value = "111";

////xml节点附件属性
          testPointNode.Attributes.Append(testPointID);
           testPointNode.Attributes.Append(caseID);
           testPointNode.Attributes.Append(name);
          rootNode.AppendChild(testPointNode);


            ////附加根节点
            xmlDoc.AppendChild(rootNode);
           ////保存Xml文档
          xmlDoc.Save(@"d:\testPoint.xml");

结果:

<?xml version="1.0" encoding="utf-8"?>
<root>
  <testPoint TestPointID="1" CaseId="TEST_0001" />
</root>

另外一种方法:

XmlDocument doc = new XmlDocument();
            XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "GB2312", null);
            doc.AppendChild(dec);
            //创建一个根节点(一级)
            XmlElement root = doc.CreateElement("First");
            doc.AppendChild(root);
            //创建节点(二级)
            XmlNode node = doc.CreateElement("Seconde");
            root.AppendChild(node);
            //创建节点(三级)
            XmlElement element1 = doc.CreateElement("Third1");
            element1.SetAttribute("Name", "Sam");
            element1.SetAttribute("ID", "665");
            element1.InnerText = "Sam Comment";
            node.AppendChild(element1);
            doc.Save(@"d:\bb.xml");

结果:

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/63608.html