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格式是这样的

c#操作xml增删改查的更多相关文章

  1. 使用python操作XML增删改查

    使用python操作XML增删改查 什么是XML? XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输 ...

  2. Linq To Xml操作XML增删改查

    对XML文件的操作在平时项目中经常要运用到,比如用于存放一些配置相关的内容:本文将简单运用Linq TO Xml对XML进行操作,主要讲解对XML的创建.加载.增加.查询.修改以及删除:重点在于类XD ...

  3. 4.Linq To Xml操作XML增删改查

    转自https://www.cnblogs.com/wujy/p/3366812.html 对XML文件的操作在平时项目中经常要运用到,比如用于存放一些配置相关的内容:本文将简单运用Linq TO X ...

  4. js操作indexedDB增删改查示例

    js操作indexedDB增删改查示例 if ('indexedDB' in window) { // 如果数据库不存在则创建,如果存在但是version更大,会自动升级不会复制原来的版本 var r ...

  5. MySQL数据分析(16)— 数据操作之增删改查

    前面我们说学习MySQL要从三个层面,四大逻辑来学,三个层面就是库层面,表层面和数据层面对吧,数据库里放数据表,表里放数据是吧,大家可以回忆PPT中jacky的这图,我们已经学完了库层面和表层面,从本 ...

  6. Redis简单的数据操作(增删改查)

    #Redis简单的数据操作(增删改查): 字符串类型 string 1. 存储: set key value 127.0.0.1:6379> set username zhangsan OK 2 ...

  7. [原创]Linq to xml增删改查Linq 入门篇:分分钟带你遨游Linq to xml的世界

    本文原始作者博客 http://www.cnblogs.com/toutou Linq 入门篇(一):分分钟带你遨游linq to xml的世界 本文原创来自博客园 请叫我头头哥的博客, 请尊重版权, ...

  8. net对XML增删改查

    Pass:看公司代码,配置下拉框的功能,和下拉框的数字转文字.配置xml里面有下拉的value,name,这样界面直接显示数字,然后转译成中文 1.xml文件格式 <?xml version=& ...

  9. .net xml 增删改查基础复习及干货分享

    今天做做项目时,有一个需求需要用到一些固定的文本数据,觉得将这些需要存储的信息直接写在代码里很不友好,放在数据库中存储又觉得不够方便,自然就想到了使用xml来进行操作,我平常在项目中其实用到xml的机 ...

随机推荐

  1. dom4j-full.jar 解析 XML

    dom4j-full.jar 解析 XML public Document getDocument() throws DocumentException { SAXReader read=new SA ...

  2. 【收藏用】--切勿转载JAVA 使用Dom4j 解析XML

    原帖地址 : http://blog.csdn.NET/yyywyr/article/details/38359049 解析XML的方式有很多,本文介绍使用dom4j解析xml. 1.环境准备 (1) ...

  3. [Flex] Accodion系列 - Header文本颜色设置

    <?xml version="1.0" encoding="utf-8"?> <!--Flex中如何给Accordion的各个头部文字设置不同 ...

  4. 对json数据进行类似sql查询

    添加js引用:jsonsql-0.1.js 通过下面列子得到一个json类型的结果 Example: jsonsql.query("select * from json.channel.it ...

  5. JqGrid单选

    You have to do some more stuff: 1. Set multiboxonly to true and multiselect to true 2. Define the ev ...

  6. List<IPoint> to IPointCollection to IPolygon

    IPointCollection 到 IPolygon的转换 IPoint pPoint = new PointClass();            //IPolygon pPolygon1 = n ...

  7. SGU 194 【带上下界的无源汇的可行流】

    题意: 给点数n和边数m. 接下来m条有向边. a b c d 一次代表起点终点,下界上界. 求: 判断是否存在可行流,若存在则输出某可行流.否则输出IMPOSSIBLE 思路: <一种简易的方 ...

  8. SQL Server 2012 Enterprise Core Edition和SQL Server 2012 Enterprise Edition的区别

    core没有图形界面,只有power shell界面,给没有图形界面的windows用的.

  9. html——SVG

    SVG 指可伸缩矢量图形 (Scalable Vector Graphics) SVG 用于定义用于网络的基于矢量的图形 SVG 使用 XML 格式定义图形 SVG 图像在放大或改变尺寸的情况下其图形 ...

  10. HDU2176尼姆博弈

    HDU2176 http://acm.hdu.edu.cn/showproblem.php?pid=2176 假设有3个数,a[0],a[1],a[2];那么ans=a[0]^a[1]^a[2];若a ...