C#中对XML操作 <第二篇>

一、XML文件操作中与.Net中对应的类

  微软的.NET框架在System.xml命名空间提供了一系列的类用于Dom的实现。

  以下给出XML文档的组成部分对应.NET中的类:

XML文档组成部分 对应.net中的类
处理指令 XmlProcessingInstruction
专指元素节点 XmlElement
属性 XmlAttribute
文本节点 XmlText
节点 XmlNode
文档 XmlDocument
XmlWriter 对象的特性 XmlWriterSettings
注释 XmlComment

二、Xml文档各种处理类

  1、XmlNode节点类:包括元素节点、文本节点、属性节点等等。

  这个类可以说是.Net Xml操作的根基,大部分Xml操作类都继承自此类。很多类都重写了该类的方法等。

  这个类成员属性,方法都很多,但是都是非常简单的,无非是对Xml文档的添加,修改,查询,保存等操作。因此,直接通过看MSDN就足够:

  XmlNode:http://msdn.microsoft.com/zh-cn/library/system.xml.xmlnode_members(v=vs.80).aspx

  另外,基本上,所有类都继承于此类,都大同小异。

  2、XmlElement继承了XmlNode,专指元素节点。

  XmlElement的特点:

  • XmlElement继承自XmlLinkedNode又继承自XmlNode类。
  • XmlElement专指元素节点,Xml节点有多种类型:属性节点、注释节点、文本节点、元素节点等。也就是XmlNode是这多种节点的统称。
  • XmlElement是具现类,可以直接实例化,而XmlNode是抽象类,必须通过XmlDocument的某些方法返回。

  本处仅仅写个最简单的示例:

  示例Xml文档:

<?xml version="1.0" encoding="gb2312" ?>
<Article>
  <author age="30">张三</author>
  <length>12000</length>
  <price>42</price>
</Article>

  简单示例:

        static void Main(string[] args)
        {
            //XmlDocument
            XmlDocument doc = new XmlDocument();
            doc.Load(@"D:\Articles.xml");

            //XmlNode出场
            XmlNode node = doc.SelectSingleNode("Article");
            string author = node.FirstChild.InnerText;
            Console.WriteLine(author);  //输出 张三

            //XmlElement出场
            XmlElement element = doc.DocumentElement;   //根元素节点
            Console.WriteLine(element.Name);

            //XmlAttribute出场
            XmlAttribute attribute = element.FirstChild.Attributes[0];  //输出30
            Console.WriteLine(attribute.Value);

            //XmlComment出场
            XmlComment comment = doc.CreateComment("这是字数!");
            element.PrependChild(comment);

            doc.Save(@"D:\123123.xml");

            Console.ReadKey();
        }

出处:https://www.cnblogs.com/kissdodog/archive/2013/02/24/2924227.html

原文地址:https://www.cnblogs.com/mq0036/p/11556698.html

时间: 2024-10-09 02:14:58

C#中对XML操作 <第二篇>的相关文章

[j2ee]java中的xml操作

一.XML简单介绍      xml是可扩展标记语言,主要用来标记数据.定义数据类型,很适合万维网传输. xml特点: xml是一种标记语言.非常类似HTML xml的设计宗旨是数据传输,而不是显示数据 xml标签没有被提前定义,须要自行定义标签 xml被设计为具有自我描写叙述性 xml是W3C的推荐标准 xml和html对照: XML被设计为传输和存储数据,其焦点是数据的内容. html被设计用来显示数据,其焦点是数据的外观. html旨在显示信息,而xml旨在传输信息. 演示样例: <boo

Java中的XML操作

一.XML简介 1.  XML,即可扩展标记语言(Extendsible Markup Language),标准通用标记语言的子集,一种用于标记电子文件使其具有结构性的标记语言.它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言.它非常适合万维网传输,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据. XML是一种标记语言,很类似HTML XML的设计宗旨是传输数据,而非显示数据 XML标签没有被预定义,需要自定义标签 XML被设计为具有自我描述性 XM

mysql数据库的基本介绍与操作(第二篇)

1.创建表: 格式: create table 表名( 列名  类型  是否可以为空, 列名  类型  是否可以为空, ) engine=innodb default charset=utf8; 例子: create table t_article (    article_id INT (11) NOT NULL auto_increment,    article_name VARCHAR (200) NOT NULL,    article_author VARCHAR (100) NOT

iOS开发中常用的轮子 第二篇

1.SDWebImage: 网络图片缓存框架:作者 Olivier Poitrey 是 Dailymotion 的 CTO, 拥有多个不错的开源项目, 此项目常用于对从 Web 端接受到的图片进行缓存, 是 UIImageView 的扩展, 应用起来比较简单. 2.MBProgressHUD: 快速实现类似android中的toast效果:作者 Matej Bukovinski 是一位全栈工程师, UI/UX 设计师, 此项目是一款提示框第三方库, 帮助开发者快速应用到项目中) 3. SVPro

WF4常用操作&lt;第二篇&gt;

一.启动工作流 WF4启动工作流有两种方式: WorkflowInvoker.Invoke(); WorkflowApplication.Run(); 区别在于,Invoke能附着在宿主程序上执行. static void Main(string[] args) { //方法1 WorkflowInvoker.Invoke(new Workflow1()); //方法2 WorkflowApplication WorkflowInstance1 = new WorkflowApplication

C# : 操作Word文件的API - (将C# source中的xml注释转换成word文档)

这篇博客将要讨论的是关于: 如何从C#的source以及注释, 生成一份Word格式的关于各个类,函数以及成员变量的说明文档. 他的大背景如下...... 最近的一个项目使用C#, 分N个模块, 在项目的里程碑的时候, 日本的总公司要检查我们的成果物. 成果物包括源代码, 概要设计式样书(SD,System Design), 详细设计式样书(PD, Program Design), 自动化测试等等. 源代码必须要符合编码规范(每个函数都要有注释, 方法变量的命名规则等...) 这些检查都很正常,

深入理解javascript对象系列第二篇——属性操作

× 目录 [1]查询 [2]设置 [3]删除[4]继承 前面的话 对于对象来说,属性操作是绕不开的话题.类似于“增删改查”的基本操作,属性操作分为属性查询.属性设置.属性删除,还包括属性继承.本文是对象系列的第二篇——属性操作 属性查询 属性查询一般有两种方法,包括点运算符和方括号运算符 var o = { p: 'Hello World' }; o.p // "Hello World" o['p'] // "Hello World" [注意]变量中可以存在中文,因

Django之模型层第二篇:多表操作

Django之模型层第二篇:多表操作 一 表关系回顾 ? 在讲解MySQL时,我们提到,把应用程序的所有数据都放在一张表里是极不合理的. ? 比如我们开发一个员工管理系统,在数据库里只创建一张员工信息表,该表有四个字段:工号.姓名.部门名.部门职能描述,此时若公司有1万名员工,但只有3个部门,因为每一名员工后都需要跟着部门信息(部门名.部门职能),所以将会导致部门信息出现大量重复.浪费空间. ? 解决方法就是将数据存放于不同的表中,然后基于foreign key建立表之间的关联关系. ? 细说的

C# Winform中执行post操作并获取返回的XML类型的数据

/// <summary> /// 返回指定日期的订单数据 /// </summary> /// <param name="StartDate">起始日期</param> /// <param name="EndDate">结束日期</param> /// <returns>DataTable</returns> public System.Data.DataTable