//命名空间
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节点
代码运行后: