我们知道XML是一种可标记性的语言,用来标记数据、定义数据类型,是一种执行用户对自己的标记语言进行定义的源语言。由于结构好。而且easy理解,就好比一棵树,层次关系分明,因此也经常把一些数据存储到XML文件里,以下就说一下怎样在C#中操作XML文件。

经常使用类

XmlDocument:XML的文档。就好比一棵树。

XmlNode:XML中的结点类,就好比树枝。

XmlElement:XML中元素,就好比树枝上的叶子。

既然我们已经了解这几个经常使用类的,那么让你画一棵树是不是非常easy呢?

树..........................树枝..........................树叶

以下就为大家来演示操作一遍,先看一下终于的效果图

<span style="font-family:SimSun;font-size:18px;"><span style="font-family:SimSun;font-size:18px;"><?xml version="1.0" encoding="gb2312"?>
<Employees>
<Node name="李红" age="23">
<hobby>篮球</hobby>
<games>QQ飞车</games>
</Node>
<Node name="李红" age="23">
<hobby>篮球</hobby>
<games>QQ飞车</games>
</Node>
</Employees></span></span>

在上述代码中,Employees以下有两个节点。而且每一个节点下都有两个元素。怎样来配置这些元素呢?代码例如以下

<span style="font-family:SimSun;font-size:18px;"><span style="font-family:SimSun;font-size:18px;">//引用两个变量
XmlDocument xmldoc;
XmlElement xmlelem; xmldoc = new XmlDocument();//
//加入XML的声明段落<?xml version="1.0" encoding="gb2312"?>
XmlDeclaration xmlDecl;
xmlDecl = xmldoc.CreateXmlDeclaration("1.0", "gb2312", null);
//加入到XML文件里
xmldoc.AppendChild(xmlDecl);
//创建一个元素
xmlelem = xmldoc.CreateElement("", "Employees", "");
xmldoc.AppendChild(xmlelem);
for (int i = 1; i < 3; i++)
{
//找到文档中的Employees结点
XmlNode root = xmldoc.SelectSingleNode("Employees");
//创建一个元素
XmlElement xel = xmldoc.CreateElement("Node");
//设置Node元素的属性
xel.SetAttribute("name", "李红");
xel.SetAttribute("age", "23");
//创建另外一个元素
XmlElement xesub1 = xmldoc.CreateElement("hobby");
//设置显示的文本内容
xesub1.InnerText = "篮球";
//把元素加入到xel中
xel.AppendChild(xesub1);
XmlElement xesub2 = xmldoc.CreateElement("games");
xesub2.InnerText = "QQ飞车";
xel.AppendChild(xesub2);
root.AppendChild(xel);
//最后把XML文件已data的名字保存到server同名的文件夹下
xmldoc.Save(Server.MapPath("data.xml"));</span></span>


小结

整个流程下来,事实上就是通过C#中System.Xml命名空间下的几个类来实现的,仅仅要对这几个类的属性和方法熟悉的话。事实上很easy。上述仅仅是单纯的创建操作,通过这几个类的属性和方法我们也能够做到改动、删除等操作。







C#.Net中操作XML方法一的更多相关文章

  1. VC++中操作XML(MFC、SDK)转

    [转]VC++中操作XML(MFC.SDK) XML在Win32程序方面应该没有在Web方面应用得多,很多Win32程序也只是用XML来存存配置信息而已,而且没有足够的好处的话还不如用ini.VC++ ...

  2. VBA中操作XML

    OFFICE2007之后使用了OpenXml标准(伟大的改变),定制文本级的Ribbon可以通过修改压缩包内的xml文件来实现. 先学习一下VBA中操作XML的方法 先引用Microsoft XML ...

  3. 数据库中操作XML(openXML)

    最近公司项目需要在数据库中操作XML,因此系统的学习了一下 一.openxml的格式 OPENXML( idoc int [ in] , XPathnvarchar [ in ] , [ flags ...

  4. 登录操作(方法一:设置flag标志位)

    登录操作(方法一:设置flag标志位) user_name="star"passwoed='123'passed_authentication=Falsecount=0for i ...

  5. 第12章 在.NET中操作XML

    12.1 XML概述 12.1.1 为什么要有XML 12.1.2 XML文档结构 (1)文档声明 <?xml version="1.0"encoding="UTF ...

  6. [转]VC++中操作XML(MFC、SDK)

    XML在Win32程序方面应该没有在Web方面应用得多,很多Win32程序也只是用XML来存存配置信息而已,而且没有足够的好处的话还不如用ini.VC++里操作XML有两个库可以用:MSXML和Xml ...

  7. C#中操作xml文件(插入节点、修改、删除)

    已知有一个xml文件(bookstore.xml)如下: <?xml version="1.0" encoding="gb2312"?> <b ...

  8. Flex中操作XML的E4X方法

    用于处理 XML 的 E4X 方法 Flash Player 9 和更高版本,Adobe AIR 1.0 和更高版本   ECMAScript for XML 规范定义了一组用于使用 XML 数据的类 ...

  9. Android(java)学习笔记187:Android中操作XML数据(使用Pull解析器)

    1. Pull解析器的运行方式与 SAX 解析器相似.它提供了类似的事件,如:开始元素和结束元素事件,使用parser.next()可以进入下一个元素并触发相应事件.跟SAX不同的是, Pull解析器 ...

随机推荐

  1. SpringMVC怎么获取前台传来的数组

    var tollerlist = new Array(); for(var k in objToller){ tollerlist.push(k); } $.ajax({ type:"pos ...

  2. systemtap 用户态调试3

    [root@localhost ~]# cat test.c #include <stdio.h> int main( void) { int a=0; a=fun(10,20); pri ...

  3. PostgreSQL 资源

    http://blog.163.com/digoal@126/blog/static/163877040201172183022203/ http://m.oschina.net/u/2426299? ...

  4. MVC批量更新,使用jQuery Template

    在"MVC批量更新,可验证并解决集合元素不连续控制器接收不完全的问题"中,当点击"添加"按钮的时候,通过部分视图,在界面上添加新行.本篇体验使用jQuery T ...

  5. 使用EF Model First创建edmx模型,数据库有数据的情况下,如何同时更新模型和数据库

    使用"EF Model First",我们可以很直观地在edmx文件中创建数据模型,并根据模型生成数据库,整个过程快速而高效.可当数据库中有了一定的数据量,同时,可能需要对模型中字 ...

  6. FT项目开发技术点(四)

    1.jsp页面form传递过来的值是在后台ishi通过name获得的而非ID.上传文字要用input type=text属性 <tr> <th>品牌:</th> & ...

  7. NativeXml

    NativeXml GITHUB: https://github.com/kattunga/NativeXml THIS IS A FORK WITH SOME FIXES AND IMPROVEME ...

  8. 【springMVC 后台跳转前台】1.使用ajax访问的后台,后台正常执行,返回数据,但是不能进入前台的ajax回调函数中 ----2.前后台都没有报错,不能进入ajax回调函数

    问题1: 使用ajax访问的后台,后台正常执行,并且正常返回数据,但是不能进入前台的ajax回调函数中 问题展示:  问题解决: 最后发现是因为后台的方法并未加注解:@ResponseBody,导致方 ...

  9. .NET:CLR via C# Thread Basics

    A thread is a Windows concept whose job is to virtualize the CPU. Thread Overhead Thread kernel obje ...

  10. iframe在ie和firefox中的高度兼容性问题解决

    1.问题描述: <iframe src="p_photo_cont_iframe.html" name="iframe" width="700& ...