C#.Net中操作XML方法一
我们知道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方法一的更多相关文章
- VC++中操作XML(MFC、SDK)转
[转]VC++中操作XML(MFC.SDK) XML在Win32程序方面应该没有在Web方面应用得多,很多Win32程序也只是用XML来存存配置信息而已,而且没有足够的好处的话还不如用ini.VC++ ...
- VBA中操作XML
OFFICE2007之后使用了OpenXml标准(伟大的改变),定制文本级的Ribbon可以通过修改压缩包内的xml文件来实现. 先学习一下VBA中操作XML的方法 先引用Microsoft XML ...
- 数据库中操作XML(openXML)
最近公司项目需要在数据库中操作XML,因此系统的学习了一下 一.openxml的格式 OPENXML( idoc int [ in] , XPathnvarchar [ in ] , [ flags ...
- 登录操作(方法一:设置flag标志位)
登录操作(方法一:设置flag标志位) user_name="star"passwoed='123'passed_authentication=Falsecount=0for i ...
- 第12章 在.NET中操作XML
12.1 XML概述 12.1.1 为什么要有XML 12.1.2 XML文档结构 (1)文档声明 <?xml version="1.0"encoding="UTF ...
- [转]VC++中操作XML(MFC、SDK)
XML在Win32程序方面应该没有在Web方面应用得多,很多Win32程序也只是用XML来存存配置信息而已,而且没有足够的好处的话还不如用ini.VC++里操作XML有两个库可以用:MSXML和Xml ...
- C#中操作xml文件(插入节点、修改、删除)
已知有一个xml文件(bookstore.xml)如下: <?xml version="1.0" encoding="gb2312"?> <b ...
- Flex中操作XML的E4X方法
用于处理 XML 的 E4X 方法 Flash Player 9 和更高版本,Adobe AIR 1.0 和更高版本 ECMAScript for XML 规范定义了一组用于使用 XML 数据的类 ...
- Android(java)学习笔记187:Android中操作XML数据(使用Pull解析器)
1. Pull解析器的运行方式与 SAX 解析器相似.它提供了类似的事件,如:开始元素和结束元素事件,使用parser.next()可以进入下一个元素并触发相应事件.跟SAX不同的是, Pull解析器 ...
随机推荐
- Linux下Qt安装
1.下载qt-everywhere-opensource-src4.7.2.tar.gz(http://download.qt.io/archive/qt/4.7),并解压在/opt目录下,文件名为q ...
- curl多文件上传
发送: header('Content-type:text/html; charset=utf-8'); //声明编码//模拟批量POST上传文件$url = 'http://test.cm/rece ...
- 【原】MyBatis执行DDL:create table,drop table等等
[前言] 对MyBatis一直停留在仅仅会用的阶段,常用的场景就是通过MyBatis对表数据进行DML(insert, delete, update等)操作,从来没有想过通过MyBatis对数据库 进 ...
- HTTP请求头和响应头
这篇文章简单总结一下HTTP请求头和响应头,并举一些web开发中响应头的用例. 1. HTTP请求头 accept:浏览器通过这个头告诉服务器,它所支持的数据类型.如:text/html, ima ...
- 淘宝--印风 专注于MySQL内核代码
http://blog.csdn.net/zhaiwx1987/article/details/6113472?utm_source=jiancool
- linux下安装MYSQL详细配置(转)
#tar zxvf mysql-5.0.18.tar.gz#cd mysql-5.0.18 #./configure --prefix=/usr/local/mysql --with-chars ...
- 2013-8-6 10:56:07 JAVA_WEB:员工号自动生成源代码
create table user_info_temp ( usId varchar2(20), usNo varchar2(20), usName varchar ...
- Spring事务传播机制与隔离级别(转)
Spring事务传播机制与隔离级别 博客分类: Spring 转自:http://blog.csdn.net/edward0830ly/article/details/7569954 (写的不错) ...
- python笔记28-lxml.etree爬取html内容
前言 本篇继续lxml.etree学习,在线访问接口,通过接口返回的html,解析出想要的text文本内容 环境准备: python 3.6 lxml requets 定位目标 爬取我的博客首页htt ...
- pytest文档15-使用自定义标记mark
前言 pytest可以支持自定义标记,自定义标记可以把一个web项目划分多个模块,然后指定模块名称执行.app自动化的时候,如果想android和ios公用一套代码时, 也可以使用标记功能,标明哪些是 ...