xml 速查

//命名空间
using
System.Xml; //初始化一个xml实例 XmlDocument xml=new XmlDocument(); //导入指定xml文件 xml.Load(path);//指定一个节点 XmlNode root=xml.SelectSingleNode("/root"); //获取节点下所有直接子节点 XmlNodeList childlist=root.ChildNodes; //判断该节点下是否有子节点 root.HasChildNodes; //获取同名同级节点集合 XmlNodeList nodelist=xml.SelectNodes("/Root/Node1"); //生成一个新节点 XmlElement node=xml.CreateElement("Node2"); //将节点加到指定节点下,作为其子节点 root.AppendChild(node); //将节点加到指定节点下某个子节点前 root.InsertBefore(node,root.ChildeNodes[i]); //为指定节点的新建属性并赋值 node.SetAttribute("id","666"); //为指定节点添加子节点 root.AppendChild(node); //获取指定节点的指定属性值 string id=node.Attributes["id"].Value; //获取指定节点中的文本 string content=node.InnerText; //保存XML文件 xml.Save(path);

Demo:

 public MainWindow()
        {
            InitializeComponent();
            //创建Xml操作对象
            XmlDocument xmlDocument = new XmlDocument();
            //从某个地址加载xml文件
            xmlDocument.Load(@"XMLFile1.xml");

            //获取xml文档的root节点(每个xml有且只有一个root节点)
            XmlElement xmlRoot = xmlDocument.DocumentElement; //DocumentElement获取文档的root

            //创建Node
            XmlElement xmlElement = xmlDocument.CreateElement("公司名称");
            //添加Node
            xmlRoot.AppendChild(xmlElement);
            //创建Attribute
            XmlAttribute xmlAttribute1 = xmlDocument.CreateAttribute("百度1");
            XmlAttribute xmlAttribute2 = xmlDocument.CreateAttribute("百度2");
            XmlAttribute xmlAttribute3 = xmlDocument.CreateAttribute("百度3");
            //设置Attribute的Value
            xmlAttribute1.Value = "111";
            xmlAttribute2.Value = "111";
            xmlAttribute3.Value = "111";

            //把Attribute添加到Node
            xmlElement.SetAttributeNode(xmlAttribute1);
            xmlElement.SetAttributeNode(xmlAttribute2);
            xmlElement.SetAttributeNode(xmlAttribute3);

            //创建一个属性 这个属性给root
            XmlAttribute xmlAttribute4 = xmlDocument.CreateAttribute("姓名");
            //设置属性的value
            xmlAttribute4.Value = "老王";
            //把这个属性添加给root节点
            xmlRoot.SetAttributeNode(xmlAttribute4);



            ////创建一个Node 这个Node给“公司”Node
            XmlAttribute xmlAttribute5 = xmlDocument.CreateAttribute("技术");
            //设置属性的value
            xmlAttribute5.Value = "c#";
            //xmlElement2 是 “部门”
            XmlElement xmlElement2 = xmlDocument.CreateElement("部门");
            //部门 Node 添加 技术 Attribute
            xmlElement2.SetAttributeNode(xmlAttribute5);
            //xmlElement是 公司名称Node
            xmlElement.AppendChild(xmlElement2);

            //保存到xml文件
            xmlDocument.Save(@"XMLFile1.xml");
        }

要分清 元素 属性 属性值 三者的区别

初始Xml文档只有一个Root节点

 代码运行后:

 

 

 

如何从 XML 文件读取对象数据 (C#) | Microsoft Docs

posted @ 2022-08-24 16:18  薛定谔的小灯泡  阅读(58)  评论(0编辑  收藏  举报