知识点目录==========>传送门

 

 

XML是咋样就不用说了文件标记语言。

根本记录怎样对XML文件举行增删改查。

Xml的操作类都设有System.xml命名空间下边。

应用型的直接上代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml;

namespace XMLTest
{
    class Program
    {
        static void Main(string[] args)
        {
            //1.创建XML文档对象
            XmlDocument doc = new XmlDocument();

            //创建头
            XmlDeclaration xmlDeclaration = doc.CreateXmlDeclaration("1.0", "UTF-8", null);

            //添加节点
            doc.AppendChild(xmlDeclaration);
            XmlElement xmlElement = doc.CreateElement("Persons");

            //给节点添加属性
            xmlElement.SetAttribute("Name", "一小时小超人");
            doc.AppendChild(xmlElement);


            XmlElement xmlElement1 = doc.CreateElement("Person");
            //给节点添加文字
            xmlElement1.InnerXml = "小超人";
            xmlElement.AppendChild(xmlElement1);
            doc.Save("Test.xml");

        }
    }
}

 

<?xml version="1.0" encoding="UTF-8"?>
<Persons Name="一小时小超人">
  <Person>小超人</Person>
</Persons>

以此地方重点讲一下
XmlElement.InnerXml和XmlElement.InnerText的界别。代码演示

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml;

namespace XMLTest
{
    class Program
    {
        static void Main(string[] args)
        {
            //1.创建XML文档对象
            XmlDocument doc = new XmlDocument();

            //创建头
            XmlDeclaration xmlDeclaration = doc.CreateXmlDeclaration("1.0", "UTF-8", null);

            //添加节点
            doc.AppendChild(xmlDeclaration);
            XmlElement xmlElement = doc.CreateElement("Persons");

            //给节点添加属性
            xmlElement.SetAttribute("Name", "一小时小超人");

            doc.AppendChild(xmlElement);

            XmlElement xmlElement1 = doc.CreateElement("Person");
            //给节点添加文字
            xmlElement1.InnerXml = "<演示>小超人</演示>";
            xmlElement.AppendChild(xmlElement1);
            XmlElement xmlElement2 = doc.CreateElement("Person");
            //给节点添加文字
            xmlElement2.InnerText = "<演示>小超人</演示>";

        //给节点添加属性
        xmlElement2.SetAttribute(“name”, “一时辰小超人”);

            xmlElement.AppendChild(xmlElement2);

            doc.Save("Test.xml");

        }
    }
}

<?xml version="1.0" encoding="UTF-8"?>
<Persons Name="一小时小超人">
  <Person>
    <演示>小超人</演示>
  </Person>
  <Person name="一小时小超人">&lt;演示&gt;小超人&lt;/演示&gt;</Person>
</Persons>

 

 

很醒目标看出来假设字符串是个标签,Interxml会当成标签给你添加,innterText会转义。

下边演示一下读取操作

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml;

namespace XMLTest
{
    class Program
    {
        static void Main(string[] args)
        {
            //1.创建XML文档对象
            XmlDocument doc = new XmlDocument();
            if (File.Exists("Test.xml"))
            {
                //通过文件名加载Xml,也可以通过流之类的,其他重载方法,看文档。
                doc.Load("Test.xml");

                //获取根节点
                XmlElement xmlElement = doc.DocumentElement;

                //获取根节点下面的子节点集合
                XmlNodeList nodeList = xmlElement.ChildNodes;
                //循环取每一个子节点
                foreach (XmlNode item in nodeList)
                {

                    Console.WriteLine(item.Name);

                    //获取节点属性
                    //string attributesValue=item.Attributes["属性名称"].Value;
                }
                Console.ReadKey();
            }


        }
    }
}

XML,下边代码把常用的操作列出来了,其他的诸多操作。就不一一列举了。。。。。。。。。。。。。

 

相关文章

网站地图xml地图