利用XmlDocument可以方便的操作XML文件。

.操作XML文件基本方法

()添加对System.Xml的引用,并使用using语句添加引用;

()假设要读取的XML文件如下:

<?xml version="1.0" encoding="utf-8"?>
<Students>
<Student>
<Name>张靓靓</Name>
<Age></Age>
<Hobby>唱歌歌</Hobby>
</Student>
<Student>
<Name>周杰杰</Name>
<Age></Age>
<Hobby>耍双节棍棍</Hobby>
</Student>
</Students> ()编写程序,增加节点: private static void AddNode()
{
XmlDocument myXml = new XmlDocument();
myXml.Load("Student.xml"); //读取指定的XML文档
XmlNode students = myXml.SelectSingleNode("Students");//读取Students节点
XmlElement newStudent = myXml.CreateElement("Student"); newStudent.SetAttribute("班级", "10软件");
XmlElement name = myXml.CreateElement("Name");
name.InnerText = "张三";
XmlElement age = myXml.CreateElement("Age");
age.InnerText = "";
XmlElement hobby = myXml.CreateElement("Hobby");
hobby.InnerText = "看书";
newStudent.AppendChild(name);
newStudent.AppendChild(age);
newStudent.AppendChild(hobby);
students.AppendChild(newStudent);
myXml.Save("Student.xml");
} ()删除节点: private static void DelNode()
{
XmlDocument myXml = new XmlDocument();
myXml.Load("Student.xml"); //读取指定的XML文档
XmlNode student= myXml.SelectSingleNode("//Student[Name='张德友']");//读取节点
if(student!=null)
student.ParentNode.RemoveChild(student);
myXml.Save("Student.xml");
} ()修改节点的值: private static void ChangeNode()
{
XmlDocument myXml = new XmlDocument();
myXml.Load("Student.xml"); //读取指定的XML文档
XmlNodeList students = myXml.DocumentElement.ChildNodes;
foreach (XmlNode student in students)
{
XmlElement name=student.SelectSingleNode("Name") as XmlElement;//读取节点
if (name.InnerText.Equals("张三"))
name.InnerText = "李四";
}
myXml.Save("Student.xml");
} ()读取XML文件: private static void ReadNode()
{
XmlDocument myXml = new XmlDocument();
myXml.Load("Student.xml"); //读取指定的XML文档
XmlNodeList students = myXml.DocumentElement.ChildNodes;//读取所有Student节点
foreach (XmlNode student in students)// 对子节点进行循环
{
foreach (XmlNode node in student.ChildNodes)
{
//将每个节点的内容显示出来
switch (node.Name)
{
case "Name":
Console.WriteLine("姓名:{0}", node.InnerText);
break;
case "Age":
Console.WriteLine("年龄:{0}", node.InnerText);
break;
case "Hobby":
Console.WriteLine("爱好:{0}", node.InnerText);
break;
}
}
}
} 操作ASP.NET网站站点地图文件: 站点地图文件Web.sitemap的格式如下: <?xml version="1.0" encoding="utf-8"?>
<siteMapNode url="default.aspx" title="新书推荐" description="">
<siteMapNode title=" C#" url="BookList.aspx?typeid=1" description="" />
<siteMapNode title=".NET" url="BookList.aspx?typeid=25" description="" />
</siteMapNode> /// <summary>
/// 更新全部XML
/// </summary>
private void ModifyXml()
{
xmldocTree.Load(Server.MapPath(CATAGORYXML));
xmldocTree.SelectSingleNode("siteMapNode").InnerText="";
foreach (Category catagory in CategoryManager.GetAllCategories())
{
MakeChild(catagory);
}
xmldocTree.Save(Server.MapPath(CATAGORYXML));
}
/// <summary>
/// 设置子节点
/// </summary>
/// <param name="catagory"></param>
private void MakeChild(Category catagory)
{
XmlElement xmlelNode = xmldocTree.CreateElement("siteMapNode");
xmlelNode.SetAttribute("title", catagory.Name);
xmlelNode.SetAttribute("url", BOOKLISTURL + catagory.Id.ToString());
xmlelNode.SetAttribute("description", "");
xmldocTree.SelectSingleNode("siteMapNode").AppendChild(xmlelNode);
} 拣尽寒枝不肯栖,寂寞沙洲。 分类: .Net 标签: XML 绿色通道: 谢谢推荐! 已关注 收藏该文与我联系 zhouhb
关注 -
粉丝 - 我在关注他 取消关注 推荐成功 « 上一篇:C#调用带返回值的存储过程
» 下一篇:JavaScript学习笔记(一)—细节问题

利用XmlDocument操作XML文件的更多相关文章

  1. Asp.Net 操作XML文件的增删改查 利用GridView

    不废话,直接上如何利用Asp.NET操作XML文件,并对其属性进行修改,刚开始的时候,是打算使用JS来控制生成XML文件的,但是最后却是无法创建文件,读取文件则没有使用了 index.aspx 文件 ...

  2. C#操作xml文件:使用XmlDocument 实现读取和写入

    XML文件是一种常用的文件格式,例如WinForm里面的app.config以及Web程序中的web.config文件,还有许多重要的场所都有它的身影.Xml是Internet环境中跨平台的,依赖于内 ...

  3. 使用XML序列化器生成XML文件和利用pull解析XML文件

    首先,指定XML格式,我指定的XML格式如下: <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <message&g ...

  4. WebAPI调用笔记 ASP.NET CORE 学习之自定义异常处理 MySQL数据库查询优化建议 .NET操作XML文件之泛型集合的序列化与反序列化 Asp.Net Core 轻松学-多线程之Task快速上手 Asp.Net Core 轻松学-多线程之Task(补充)

    WebAPI调用笔记   前言 即时通信项目中初次调用OA接口遇到了一些问题,因为本人从业后几乎一直做CS端项目,一个简单的WebAPI调用居然浪费了不少时间,特此记录. 接口描述 首先说明一下,基于 ...

  5. Java操作XML文件 dom4j 篇

    在项目中,我们很多都用到了xml文件,无论是参数配置还是与其它系统的数据交互.今天就来讲一下Java 中使用dom4j来操作XML文件. 我们需要引入的包: //文件包 import java.io. ...

  6. PHP操作XML文件学习笔记

    原文:PHP操作XML文件学习笔记 XML文件属于标签语言,可以通过自定义标签存储数据,其主要作用也是作为存储数据. 对于XML的操作包括遍历,生成,修改,删除等其他类似的操作.PHP对于XML的操作 ...

  7. Qt之QDomDocument操作xml文件-模拟ini文件存储

    一.背景 不得不说Qt是一个很强大的类库,不管是做项目还是做产品,Qt自身封装的东西就已经非常全面了,我们今天的这篇文章就是模拟了Qt读写ini文件的一个操作,当然是由于一些外力原因,我们决定自己来完 ...

  8. JAVA中通过Jaxp操作XML文件基础

    Java中有多种方式操作XML文件,目前讲一讲以SUN公司提供的DocumentBuilderFactory工厂类对象操作XML. 使用XML基本操作就是需要CRUD(增删改查),那么首先通过一个查询 ...

  9. C#基础知识---Linq操作XML文件

    概述 Linq也就是Language Integrated Query的缩写,即语言集成查询,是微软在.Net 3.5中提出的一项新技术. Linq主要包含4个组件---Linq to Objects ...

随机推荐

  1. MySQL性能优化-内存参数配置

    Mysql对于内存的使用,可以分为两类,一类是我们无法通过配置参数来配置的,如Mysql服务器运行.解析.查询以及内部管理所消耗的内存:另一类如缓冲池所用的内存等. Mysql内存参数的配置及重要,设 ...

  2. hdu 5147 Sequence II 树状数组

    Sequence II Time Limit: 5000/2500 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Prob ...

  3. Tensorflow中的命名空间scope

    1.name_scope 在tensorflow中有两种声明变量的方式,tf.get_variable()和tf.Variable(). name_scope对于tf.get_variable()无效 ...

  4. LINQ(数据查询)

    如果只有空的构造函数,想要对字段进行初始化,可以直接在构造函数后面加上{属性名=值,属性名=值};属性与属性之间用,分割开 //查询所有武学级别大于8的武林高手 //var res = new Lis ...

  5. 51nod 1040 欧拉函数

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1040 1040 最大公约数之和 题目来源: rihkddd 基准时间限制 ...

  6. 计算机网络【七】:可靠传输的实现 (tcp窗口滑动以及拥塞控制)【转】

    转自:http://blog.chinaunix.net/uid-26275986-id-4109679.html TCP协议作为一个可靠的面向流的传输协议,其可靠性和流量控制由滑动窗口协议保证,而拥 ...

  7. BEC listen and translation exercise 12

    More than 220 cities now have air quality monitoring systems and 42 others will have systems in plac ...

  8. uva1605 - Building for UN(构造法)

    这道题构造出的结果很妙,考察思维能力.就两层,每层都n*n个格子,第一层第i行都放国家i,第二层第j列都放国家j. 需要注意的是ASCII中A至Z在a至z的前面(数字小),而且它们两组不挨着.所以需要 ...

  9. C#面向对象(四):其他面向对象知识

    前文链接: C#面向对象(一):明确几个简单的概念作为开胃菜 C#面向对象(二):封装和继承 C#面向对象(三):多态 今天是这个系列的收尾文章了,来谈谈其他面向对象知识. 1.嵌套类 1.1概念 在 ...

  10. unitychan-crs 头发随动脚本

    // //SpringCollider for unity-chan! // //Original Script is here: //ricopin / SpringCollider.cs //Ro ...