1.首先新建一个xml文件(Root是我写上的)
2.
3.直接上代码,更直观
(1)初始化xml
/// <summary> /// 初始化xml /// </summary> public void LoadXml() { xmlDoc = new XmlDocument(); xmlDoc.Load(Server.MapPath("../wx.xml")); }
(2)添加节点
/// <summary> /// 向xml中添加数据 /// </summary> public void AddElement(string FromUserName) { LoadXml(); XmlNode xmldocSelect = xmlDoc.SelectSingleNode("Root");//查找节点 XmlElement el = xmlDoc.CreateElement("Person"); //添加person节点 el.SetAttribute("name", FromUserName); //添加person节点的属性"name" el.SetAttribute("time", DateTime.Now.ToString()); xmldocSelect.AppendChild(el); xmlDoc.Save(Server.MapPath("../wx.xml")); }
(3)修改节点中的某个属性
/// <summary> /// 修改xml属性 /// </summary> /// <param name="FromUserName"></param> public void editXml(string FromUserName) { LoadXml(); XmlNodeList xnl = xmlDoc.DocumentElement.ChildNodes; foreach (XmlElement elementxml in xnl) { if (elementxml.Name == "Person") { if (elementxml.Attributes["name"].Value == FromUserName) { elementxml.Attributes["time"].Value = DateTime.Now.ToString(); } } } xmlDoc.Save(Server.MapPath("../wx.xml")); }
(4)判断xml中是否含有这个属性
//判断是否已经写入到xml中 public string IsExitXml(string FromUserName) { string datetime = ""; LoadXml(); XmlNodeList xnl = xmlDoc.DocumentElement.ChildNodes; foreach (XmlElement element in xnl) { if (element.Name == "Person") { if (element.Attributes["name"].Value ==FromUserName) { datetime = element.Attributes["time"].Value; } } } return datetime; }
(5)删除和修改差不多,对于我这个xml格式而言要这样删除
public void DeleteXml(string FromUserName="dddddd") { LoadXml(); XmlNodeList xnl = xmlDoc.DocumentElement.ChildNodes; foreach (XmlElement elementxml in xnl) { if (elementxml.Name == "Person") { if (elementxml.Attributes["name"].Value == FromUserName) { XmlNode xmldocSelect = xmlDoc.SelectSingleNode("Root"); xmldocSelect.RemoveChild(elementxml); } } } xmlDoc.Save(Server.MapPath("../wx.xml")); }
(6)我的xml格式是这样的