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>