利用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. QT Creator 代码自动补全

    QT Creator 代码自动补全 用QT Creater编程,如果没有自动补全是很痛苦的事情,于是便查阅了QT的文档,发现CTRL+SPACE是自 动补全的快捷键;但是在 Creater里使用居然没 ...

  2. nova Rescue 和 Unrescue

    usage: nova rescue [--password <password>] [--image <image>] <server> Reboots a se ...

  3. 通过YUM命令查找对应命令是通过何种软件提供的

    # yum whatprovides [命令]

  4. 添加语句<tx:annotation-driven transaction-manager="txManager"/>报错

    在添加<tx:annotation-driven transaction-manager="txManager"/>程序之前,applicationContext.xm ...

  5. 【NOIP2014 普及组】螺旋矩阵

    [NOIP2014 普及组]螺旋矩阵 一.题目 [NOIP2014 普及组]螺旋矩阵 时间限制: 1 Sec  内存限制: 128 MB 提交: 18  解决: 0 [提交][状态][讨论版] 题目描 ...

  6. T-SQL_面试题

    创建表插入数据 Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname ...

  7. JavaScript 编程模式

    编程模式,是源自经验和探索总结出的最佳实践方案,既有助于可读性和可维护性,也有助于提升整体性能. 行为隔离 总则:结构.样式和行为之间两两隔离. 避免在结构中使用内联事件 尽量少用 <scrip ...

  8. Alfred 2

    Alfred https://www.alfredapp.com/ Alfred Workflow https://www.alfredapp.com/workflows/ http://www.pa ...

  9. spring boot + thymeleaf 报错 org.thymeleaf.exceptions.TemplateInputException

    org.thymeleaf.exceptions.TemplateInputException: Error resolving template "admin/verifyPassword ...

  10. 如何将Emmet安装到到 Sublime text 3?第二部分该插件还能让我们自定义快捷键呼出某个浏览器以预览页面

    看清楚哦~~这是Sublime text 3不是2的版本,两者的安装还是有区别的,下面的方法是我感觉比较简单的,其他的要命令什么的感觉太复杂了,经测试是OK的. 先关闭Sublime text 3: ...