.net 读写xml

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml;
namespace XMLdemo
{
    class Program
    {
        public static string PATH = @"D:\xmlfile\1.xml";
        static void Main(string[] args)
        {
            CreatXml(PATH);
            UpdateXML(PATH);
        }
        public static void CreatXml(string path)
        {
            XmlDocument xmldoc = new XmlDocument();
            XmlNode xmlnode;
            //加入XML的声明段落 
            xmlnode = xmldoc.CreateXmlDeclaration("1.0", "utf-8", null);
            xmldoc.AppendChild(xmlnode);

            //加入一个根元素 
            XmlElement xmlelem = xmldoc.CreateElement("", "bookstore", "");
            xmldoc.AppendChild(xmlelem);

           
            //加入一个子元素 
            XmlElement xmlelem1 = xmldoc.CreateElement("", "books", "");
            xmlelem1.SetAttribute("genre", "", "11");
            xmlelem1.SetAttribute("ISBN", "11");
            xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1);

            //加入一个子元素 
            XmlElement xmlelem2 = xmldoc.CreateElement("", "books", "");
            xmlelem2.SetAttribute("genre", "", "22");
            xmlelem2.SetAttribute("ISBN", "22");
            xmldoc.ChildNodes.Item(1).AppendChild(xmlelem2);

            //加入一个元素
            XmlElement xmlelem3 = xmldoc.CreateElement("", "jobs", "");
            xmldoc.ChildNodes.Item(1).AppendChild(xmlelem3);
            //在第三个元素下面加一个元素
            XmlElement xmlelem31 = xmldoc.CreateElement("", "job", "");
            xmlelem31.SetAttribute("work", "", "fantasy31");
            xmlelem31.SetAttribute("time", "2-3631-431");
            xmldoc.ChildNodes.Item(1).ChildNodes.Item(2).AppendChild(xmlelem31);//item(2) 2代表的是第三个节点

            xmldoc.Save(path);
        }
        public static void UpdateXML(string path)
        {
            //一种修改方式
            //XmlDocument xmldoc = new XmlDocument();
            //xmldoc.Load(path);
            //XmlNode xmlnode = xmldoc.SelectSingleNode("/bookstore/jobs/job");
            //xmlnode.Attributes["work"].Value = "我是修改";
            //xmlnode.Attributes["time"].Value = "我是修改";
            //xmldoc.Save(path);
            //第二种修改方式
            //XmlDocument xmldoc = new XmlDocument();
            //xmldoc.Load(path);
            //XmlNode xmlnode = xmldoc.ChildNodes.Item(1).ChildNodes.Item(2).ChildNodes.Item(0);
            //xmlnode.Attributes["work"].Value = "我是修改2";
            //xmlnode.Attributes["time"].Value = "我是修改2";
            //xmldoc.Save(path);
            ////删除节点

            //XmlDocument xmldoc = new XmlDocument();
            //xmldoc.Load(path);
            //xmldoc.ChildNodes.Item(1).ChildNodes.Item(2).RemoveAll();
            //xmldoc.Save(path);

            //删除其中一个元素
            XmlDocument xmldoc = new XmlDocument();
            xmldoc.Load(path);
            XmlNode xmlnode = xmldoc.ChildNodes.Item(1).ChildNodes.Item(2).ChildNodes.Item(0);
            xmlnode.Attributes.Item(0).RemoveAll();//删除work的值
            XmlAttribute xmlattribute = xmlnode.Attributes["work"];
            xmlnode.Attributes.Remove(xmlattribute);//删除work属性
            xmldoc.Save(path);
        }
    }
}

  

<?xml version="1.0" encoding="utf-8"?>
<bookstore>
  <books genre="11" ISBN="11" />
  <books genre="22" ISBN="22" />
  <jobs>
    <job work="fantasy31" time="2-3631-431" />
  </jobs>
</bookstore>

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。