C# 操作XML文件

XML基础:

  XML是eXtensible Markup Language的缩写,即可扩展标记语言;

  XML主要用于数据的存储,而HTML主要用于数据显示;

XML文档的格式要求:

  确定且唯一的根元素、开始标签和结束标签匹配;

XML文件读取总结:

  常用对象

    XMLDocument对象表示XML整个文档;

    XMLNode对象表示XML文件的单个节点;

  XMLDocument

    DocumentElement属性,获取根节点

    ChildNodes属性,获取所有子节点

    Load()方法,读取整个XML的结构

  XMLNode

    InnerText属性,当前节点的值

    Name属性,当前节点的名字

    ChildNodes属性,当前节点的所有子节点

-------------------------------------------------------

XML文件读取

  1、创建文档对象

  2、加载XML文档

  3、获取根节点

  4、遍历节点并封装数据

//引入命名空间
using System.XML;
//创建XML文档操作对象
XMLDocument objDoc = new XMLDocument();
//加载XML文件到文档对象中
objDoc.Load("...xml");
//获取XML文档根目录
XmlNode rootNode = objDoc.DocumentElement;
//创建对象集合
List<Student> stuList = new List<Student>();
foreach(XmlNode stuNode in rootNode.ChildNodes)
{
    if(stuNode.Name == 'Student')
    {
        Student objStu = new Student();
        foreach(XmlNode subNode in stuNode)
        {
            Switch(subNode.Name)
            {
                case "StuName":
                objStu.StuName = subNode.InnerText;
                //获取节点名称对应的节点值
                break;
                ...
             } 
        }
        this.dgvStuList.DataSource = stuList;
    }
}

XML数据查找方法:

  如果不需要遍历整个XML,而仅仅只是查找某一个值

//创建XML读取器
XmlTextReader tReader = new XmlTextReader("...xml");
string info = string.Empty;
while(tReader.Read())
{
    if(tReader.Name == "Version")
    {
        //找到节点后获取属性值
        info = tReader.GetAttribute("vNo");
    }
}
原文地址:https://www.cnblogs.com/pandora2050/p/13473314.html