- 浏览: 255543 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (293)
- web (1)
- [随笔分类]项目管理 (30)
- [随笔分类]WCF (14)
- 未分类 (1)
- [随笔分类]Linq (4)
- [随笔分类]C#基础 (24)
- 项目 (1)
- [网站分类]3.非技术区(技术之外的文章,但不要涉及任何政治内容) (8)
- [网站分类]1.首页原创精华.NET区(包含架构设计、设计模式)(对首页文章的要求:原创、高质量、经过认真思考并精心写作) (9)
- [随笔分类]Ubuntu (4)
- ASP.Net (1)
- [网站分类]2..NET新手区(用于发表不合适发表在首页的.NET技术文章,包括小经验、小技巧) (30)
- [随笔分类]ASP.NET MVC (20)
- [随笔分类]ASP.NET (3)
- [随笔分类]程序员厨房 (4)
- [随笔分类]英语学习 (28)
- [网站分类]4.其他技术区 (1)
- [随笔分类]Silverlight (12)
- [随笔分类]CodeSmith (8)
- [随笔分类]其他 (4)
- [随笔分类]Ruby (4)
- [发布至博客园首页] (34)
- [网站分类]其他技术区 (3)
- [随笔分类]Ruby on Rails (2)
- [网站分类].NET新手区 (33)
- [随笔分类]TDD (1)
- [随笔分类]不谈技术 (2)
- [网站分类]非技术区 (7)
最新评论
-
yicone:
You make a mistake when paste t ...
WCF步步为营(一):简单示例 -
jinweijie:
你好,这个实现不错,但是在用了scriptmanager以后就 ...
在服务器端保存ViewState
ASP.NET 2.0 XML 系列(4):用XmlReader类介绍
(本文摘自MSDN)
XmlReader 类是一个提供对 XML 数据的非缓存、只进只读访问的抽象基类。该类符合 W3C 可扩展标记语言 (XML) 1.0 和 XML 中的命名空间的建议。
XmlReader 类支持从流或文件读取 XML 数据。该类定义的方法和属性使您可以浏览数据并读取节点的内容。当前节点指读取器所处的节点。使用任何返回当前节点值的读取方法和属性推进读取器。
XmlReader 类使您可以:
-
检查字符是不是合法的 XML 字符,元素和属性的名称是不是有效的 XML 名称。
-
检查 XML 文档的格式是否正确。
-
根据 DTD 或架构验证数据。
-
从 XML 流检索数据或使用提取模型跳过不需要的记录。
使用XmlReader读取XML文档之前,我们有必要了解一下这个类的属性和方法,以及节点XmlNode的类型。
1. XmlReader类的属性
AttributeCount | 当在派生类中被重写时,获取当前节点上的属性数。 |
BaseURI | 当在派生类中被重写时,获取当前节点的基 URI。 |
CanReadBinaryContent | 获取一个值,该值指示 XmlReader 是否实现二进制内容读取方法。 |
CanReadValueChunk | 获取一个值,该值指示 XmlReader 是否实现 ReadValueChunk 方法。 |
CanResolveEntity | 获取一个值,该值指示此读取器是否可以分析和解析实体。 |
Depth | 当在派生类中被重写时,获取 XML 文档中当前节点的深度。 |
EOF | 当在派生类中被重写时,获取一个值,该值指示此读取器是否定位在流的结尾。 |
HasAttributes | 获取一个值,该值指示当前节点是否有任何属性。 |
HasValue | 当在派生类中被重写时,获取一个值,该值指示当前节点是否可以具有 Value。 |
IsDefault | 当在派生类中被重写时,获取一个值,该值指示当前节点是否是从 DTD 或架构中定义的默认值生成的属性。 |
IsEmptyElement | 当在派生类中被重写时,获取一个值,该值指示当前节点是否为空元素(例如 <MyElement/>)。 |
Item | 已重载。 当在派生类中被重写时,获取此属性的值。 |
LocalName | 当在派生类中被重写时,获取当前节点的本地名称。 |
Name | 当在派生类中被重写时,获取当前节点的限定名。 |
NamespaceURI | 当在派生类中被重写时,获取读取器定位在其上的节点的命名空间 URI(采用 W3C 命名空间规范中定义的形式)。 |
NameTable | 当在派生类中被重写时,获取与该实现关联的 XmlNameTable。 |
NodeType | 当在派生类中被重写时,获取当前节点的类型。 |
Prefix | 当在派生类中被重写时,获取与当前节点关联的命名空间前缀。 |
QuoteChar | 当在派生类中被重写时,获取用于括住属性节点值的引号字符。 |
ReadState | 当在派生类中被重写时,获取读取器的状态。 |
SchemaInfo | 获取作为架构验证结果分配给当前节点的架构信息。 |
Settings | 获取用于创建此 XmlReader 实例的 XmlReaderSettings 对象。 |
Value | 当在派生类中被重写时,获取当前节点的文本值。 |
ValueType | 获取当前节点的公共语言运行库 (CLR) 类型。 |
XmlLang | 当在派生类中被重写时,获取当前的 xml:lang 范围。 |
XmlSpace | 当在派生类中被重写时,获取当前的 xml:space 范围。 |
2. XmlReader类的方法
名称 | 说明 |
Close | 当在派生类中被重写时,将 ReadState 更改为 Closed。 |
Create | 已重载。 创建一个新的 XmlReader 实例。 |
Equals | 已重载。 确定两个 Object 实例是否相等。 (从 Object 继承。) |
GetAttribute | 已重载。 当在派生类中被重写时,获取属性的值。 |
GetHashCode | 用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用。 (从 Object 继承。) |
GetType | 获取当前实例的 Type。 (从 Object 继承。) |
IsName | 获取一个值,该值指示字符串参数是否是有效的 XML 名称。 |
IsNameToken | 获取一个值,该值指示该字符串参数是否是有效的 XML 名称标记。 |
IsStartElement | 已重载。 测试当前内容节点是否是开始标记。 |
LookupNamespace | 当在派生类中被重写时,在当前元素的范围内解析命名空间前缀。 |
MoveToAttribute | 已重载。 当在派生类中被重写时,移动到指定的属性。 |
MoveToContent | 检查当前节点是否是内容(非空白文本、CDATA、Element、EndElement、EntityReference 或 EndEntity)节点。如果此节点不是内容节点,则读取器向前跳至下一个内容节点或文件结尾。它跳过以下类型的节点:ProcessingInstruction、DocumentType、Comment、Whitespace 或 SignificantWhitespace。 |
MoveToElement | 当在派生类中被重写时,移动到包含当前属性节点的元素。 |
MoveToFirstAttribute | 当在派生类中被重写时,移动到第一个属性。 |
MoveToNextAttribute | 当在派生类中被重写时,移动到下一个属性。 |
Read | 当在派生类中被重写时,从流中读取下一个节点。 |
ReadAttributeValue | 当在派生类中被重写时,将属性值解析为一个或多个 Text、EntityReference 或 EndEntity 节点。 |
ReadContentAs | 将内容作为指定类型的对象读取。 |
ReadContentAsBase64 | 读取内容并返回 Base64 解码的二进制字节。 |
ReadContentAsBinHex | 读取内容并返回 BinHex 解码的二进制字节。 |
ReadContentAsBoolean | 将当前位置的文本内容作为 Boolean 读取。 |
ReadContentAsDateTime | 将当前位置的文本内容作为 DateTime 对象读取。 |
ReadContentAsDecimal | 将当前位置的文本内容作为 Decimal 对象读取。 |
ReadContentAsDouble | 将当前位置的文本内容作为双精度浮点数读取。 |
ReadContentAsFloat | 将当前位置的文本内容作为单精度浮点数读取。 |
ReadContentAsInt | 将当前位置的文本内容作为 32 位有符号整数读取。 |
ReadContentAsLong | 将当前位置的文本内容作为 64 位有符号整数读取。 |
ReadContentAsObject | 将当前位置的文本内容作为 Object 读取。 |
ReadContentAsString | 将当前位置的文本内容作为 String 对象读取。 |
ReadElementContentAs | 已重载。 读取当前元素,并将内容作为指定类型的对象返回。 |
ReadElementContentAsBase64 | 读取元素并对 Base64 内容进行解码。 |
ReadElementContentAsBinHex | 读取元素并对 BinHex 内容进行解码。 |
ReadElementContentAsBoolean | 已重载。 将当前元素值作为 Boolean 对象读取。 |
ReadElementContentAsDateTime | 已重载。 读取当前元素并将内容作为 DateTime 对象返回。 |
ReadElementContentAsDecimal | 已重载。 将当前元素值作为 Decimal 对象读取。 |
ReadElementContentAsDouble | 已重载。 读取当前元素并将内容作为双精度浮点数返回。 |
ReadElementContentAsFloat | 已重载。 将当前元素值作为单精度浮点数读取。 |
ReadElementContentAsInt | 已重载。 读取当前元素并将内容作为 32 位有符号整数返回。 |
ReadElementContentAsLong | 已重载。 读取当前元素并将内容作为 64 位有符号整数返回。 |
ReadElementContentAsObject | 已重载。 读取当前元素并将内容作为 Object 返回。 |
ReadElementContentAsString | 已重载。 读取当前元素并将内容作为 String 对象返回。 |
ReadElementString | 已重载。 这是一个用于读取简单纯文本元素的 Helper 方法。 |
ReadEndElement | 检查当前内容节点是否为结束标记并将读取器推进到下一个节点。 |
ReadInnerXml | 当在派生类中被重写时,将所有内容(包括标记)当做字符串读取。 |
ReadOuterXml | 当在派生类中被重写时,读取表示该节点和所有它的子级的内容(包括标记)。 |
ReadStartElement | 已重载。 检查当前节点是否为元素并将读取器推进到下一个节点。 |
ReadString | 当在派生类中被重写时,将元素或文本节点的内容当做字符串读取。 |
ReadSubtree | 返回新的 XmlReader 实例,此实例可用于读取当前节点及其所有子节点。 |
ReadToDescendant | 已重载。 让 XmlReader 前进到下一个匹配的子代元素。 |
ReadToFollowing | 已重载。 一直读取,直到找到命名元素。 |
ReadToNextSibling | 已重载。 让 XmlReader 前进到下一个匹配的同级元素。 |
ReadValueChunk | 读取嵌入在 XML 文档中的大量文本流。 |
ReferenceEquals | 确定指定的 Object 实例是否是相同的实例。 (从 Object 继承。) |
ResolveEntity | 当在派生类中被重写时,解析 EntityReference 节点的实体引用。 |
Skip | 跳过当前节点的子级。 |
ToString | 返回表示当前 Object 的 String。 (从 Object 继承。) |
3. XmlNodeType枚举成员
Attribute | 属性(例如,id='123')。 Attribute 节点可以具有以下子节点类型:Text 和 EntityReference。Attribute 节点不以任何其他节点类型子节点的形式出现。不将其视为 Element 的子节点。 |
CDATA | CDATA 节(例如,<![CDATA[my escaped text]]>)。CDATA 节用于转义否则将被识别为标记的文本块。CDATA 节点不能有任何子节点。它可以以 DocumentFragment、EntityReference 和 Element 节点子级的形式出现。 |
Comment | 注释(例如,<!-- my comment -->)。 Comment 节点不能有任何子节点。它可以以 Document、DocumentFragment、Element 和 EntityReference 节点子级的形式出现。 |
Document | 作为文档树的根的文档对象提供对整个 XML 文档的访问。 Document 节点可以具有以下子节点类型:XmlDeclaration、Element(最多一个)、ProcessingInstruction、Comment 和 DocumentType。它不能以任何节点类型子级的形式出现。 |
DocumentFragment | 文档片段。 DocumentFragment 节点将节点或子树与文档关联起来,而实际上并不包含在该文档中。DocumentFragment 节点可以具有以下子节点类型:Element、ProcessingInstruction、Comment、Text、CDATA 和 EntityReference。它不能以任何节点类型子级的形式出现。 |
DocumentType | 由以下标记指示的文档类型声明(例如,<!DOCTYPE...>)。 DocumentType 节点可以具有以下子节点类型:Notation 和 Entity。它可以以 Document 节点子级的形式出现。 |
Element | 元素(例如,<item>)。 Element 节点可以具有以下子节点类型:Element、Text、Comment、ProcessingInstruction、CDATA 和 EntityReference。它可以是 Document、DocumentFragment、EntityReference 和 Element 节点的子级。 |
EndElement | 末尾元素标记(例如,</item>)。 当 XmlReader 到达元素的末尾时,返回 EndElement 节点。 |
EndEntity | 由于调用 ResolveEntity 而使 XmlReader 到达实体替换的末尾时返回。 |
Entity | 实体声明(例如,<!ENTITY...>)。 Entity 节点可以具有表示已展开实体的子节点(例如 Text 和 EntityReference 节点)。它可以以 DocumentType 节点子级的形式出现。 |
EntityReference | 实体引用(例如,#)。 EntityReference 节点可以具有以下子节点类型:Element、ProcessingInstruction、Comment、Text、CDATA 和 EntityReference。它可以以 Attribute、DocumentFragment、Element 和 EntityReference 节点子级的形式出现。 |
None | 如果未调用 Read 方法,则由 XmlReader 返回。 |
Notation | 文档类型声明中的表示法(例如,<!NOTATION...>)。Notation 节点不能具有任何子节点。它可以以 DocumentType 节点子级的形式出现。 |
ProcessingInstruction | 处理指令(例如,<?pi test?>)。 ProcessingInstruction 节点不能具有任何子节点。它可以以 Document、DocumentFragment、Element 和 EntityReference 节点子级的形式出现。 |
SignificantWhitespace | 混合内容模型中标记间的空白或 xml:space="preserve" 范围内的空白。 |
Text | 节点的文本内容。 Text 节点不能具有任何子节点。它可以以 Attribute、DocumentFragment、Element 和 EntityReference 节点的子节点的形式出现。 |
Whitespace | 标记间的空白。 |
XmlDeclaration | XML 声明(例如,<?xml version='1.0'?>)。XmlDeclaration 节点必须是文档中的第一个节点。它不能具有子级。它是 Document 节点的子级。它可以具有提供版本和编码信息的属性。 |
发表评论
-
ASP.Net2.0使用Log4Net(一)
2007-11-24 15:40 1694第一种方法 在web.config中写配置文件 L ... -
ASP.Net2.0使用Log4Net(二)
2007-11-24 17:39 930(二)使用单独的配置文件,不放在web.config里 1. ... -
UML学习笔记
2007-11-25 09:55 710一、UML中的关系 依赖: 如果对象X发生变化,引起另一个对 ... -
NBear学习笔记(一)
2007-12-01 21:14 1131使用已有数据库。(之前先设计实体,再自动生成数据库,发现每次 ... -
NBear学习笔记(二)
2007-12-02 17:14 848本篇演示一对多关系,和两个表联合查询。 使用已有数据库,我们演 ... -
NBear学习笔记(三)
2007-12-04 22:11 880上一篇一对多的关系说的不是很清楚,这篇补充一下。 这篇我们创建 ... -
CSS使用总结
2007-12-12 21:10 664在分配ID和类名时,尽可能保持与表现形式无关,例如con ... -
ASP.NET2.0缓存技术
2007-12-12 23:33 717ASP.NET2.0提供如下缓存方式: Output Cac ... -
VS2008正式版创建silverlight项目失败的解决办法
2008-02-16 09:49 844安装microsoft express blend2 最新的试 ... -
vista英文版语言包安装
2008-02-17 21:35 1122最近,需要给老外截英文vista的一些图,但是系统装的是中文版 ... -
SilverLight显示中文字(一)
2008-02-18 14:42 968我们知道silverlight只提供了一下几种字体, 当我们 ... -
silverlight显示中文字(二):使用TextBlock+Downloader
2008-02-18 16:39 976(一),建立一个Silverlight1.0 site. ... -
SilverLight显示中文字(三) :使用Path和图形
2008-02-18 16:59 694使用path将文字转换为路径 用Direct select ... -
在Silverlight1.1中定义与调用Javascript事件的方法
2008-02-20 13:19 710我们在silverlight1.0 想调用javascrip ... -
在线流程图制作工具
2008-02-26 22:32 12781. DrawAnywhere , 的在线流程图制作工具。 D ... -
VS2008下开发ASP.Net2.0 and AJAX1.0的程序
2008-03-05 13:57 1062为什么要在vs2008下开发ASP.Net2.0 and AJ ... -
VS2008开发Silverlight2程序:环境安装
2008-03-06 13:36 1682微软在MIX08大会,发布了Silverlight 2 Bet ... -
ASP.NET 2.0 XML 系列(1): XML介绍
2008-03-15 12:40 7331.1 简介 XML的一个强大之处在于它的强大可扩展性。XM ... -
ASP.NET 2.0 XML 系列(2): XML技术
2008-03-15 14:13 7031. DTD XML最强大之处是允许自定义标签,但是对 ... -
ASP.NET 2.0 XML 系列(3): .Net Framework中XML类
2008-03-15 14:52 621System.Xml包含了一些和XML文档的读写操作相关的类, ...
相关推荐
内容概要:本文提供了详细的MongoDB分片集群的搭建指导,涵盖了从环境准备、配置文件编写、副本集的建立、主节点的选择、配置服务器和数据分片服务器的配置到最后的路由节点的搭建与操作整个流程,以及对数据库的哈希与范围两种分片策略的应用介绍和具体命令执行。 适合人群:熟悉NoSQL数据库概念并对MongoDB有一定了解的技术人员,尤其是在大型数据管理和分布式数据库架构设计中有需求的开发者。 使用场景及目标:帮助技术人员掌握构建高效能、高可用性的MongoDB分片集群的方法,适用于处理大规模、实时性强的数据存储与读取场景。 其他说明:文中通过实例演示了每个步骤的具体操作方法,便于跟随文档实操,同时也介绍了可能遇到的问题及其解决方案,如在没有正确配置的情况下试图写入数据时出现错误等情况的处理。
CPPC++_嵌入式硬件的物联网解决方案blinker库与Arduino ESP8266 ESP32一起工作
CPPC++_逆向调用QQ Mojo IPC与WeChat XPlugin
CPPC++_现代活动指标
CPPC++_Xournal是一款手写笔记软件,支持PDF注释,使用C语言编写,支持GTK3,支持Linux,如Ubu
资源概述: 本资源提供了一套完整的学生实习管理系统解决方案,涵盖了前台小程序页面与后台管理系统两大模块。前台小程序页面设计简洁直观,用户可根据不同身份(学生或企业)进行登录。学生用户能够方便地浏览并投递感兴趣的实习岗位,而企业用户则能轻松发布实习信息,吸引优秀人才。后台管理系统功能全面,包括个人中心、首页、学生管理、教师管理、企业管理、招聘管理、评分管理以及实习管理等多个方面,为管理员提供了强大的数据管理和操作工具。 技术栈亮点: SSM框架:系统后台采用Spring、Spring MVC和MyBatis Plus(简称SSM)作为核心开发框架,确保了系统的稳定性、可扩展性和可维护性。Spring作为控制反转(IoC)和面向切面编程(AOP)的容器,为系统提供了强大的业务逻辑处理能力;Spring MVC则负责处理Web请求和响应,实现了前后端的分离;MyBatis Plus作为持久层框架,简化了数据库操作,提高了开发效率。 MySQL数据库:系统采用MySQL作为数据库存储解决方案,支持大数据量的存储和高效查询。 如有侵权请联系我删除,谢谢
微服务闪聚支付项目
博客链接 https://blog.csdn.net/weixin_47560078/article/details/143714557 文章从原理介绍出发,实现了 Rust 与 Java 的互调。利用 JNI 技术,可以充分发挥 Rust 的性能优势,同时保持 Java 的跨平台特性。这种技术组合适用于对性能要求较高的应用场景,如图像处理、数据分析和系统级编程等。
cppc++
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
分布式事务lcn
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
cppc++
安卓手机与电脑的socket通信源码
Anaconda:JupyterNotebook使用教程.docx
Amazon S3:S3静态网站托管教程.docx
Python商品销售数据分析可视化项目源码(期末大作业).zip,个人经导师指导并认可通过的98分大作业设计项目。主要针对计算机相关专业的正在做期末大作业设计的学生和需要项目实战练习的学习者,可作为课程设计、期末大作业,代码资料完整下载可用。 Python商品销售数据分析可视化项目源码(期末大作业).zip,个人经导师指导并认可通过的98分大作业设计项目。主要针对计算机相关专业的正在做期末大作业设计的学生和需要项目实战练习的学习者,可作为课程设计、期末大作业,代码资料完整下载可用。Python商品销售数据分析可视化项目源码(期末大作业).zip,个人经导师指导并认可通过的98分大作业设计项目。主要针对计算机相关专业的正在做期末大作业设计的学生和需要项目实战练习的学习者,可作为课程设计、期末大作业,代码资料完整下载可用。Python商品销售数据分析可视化项目源码(期末大作业).zip,个人经导师指导并认可通过的98分大作业设计项目。主要针对计算机相关专业的正在做期末大作业设计的学生和需要项目实战练习的学习者,可作为课程设计、期末大作业,代码资料完整下载可用。Python商品销售数据分析
CPPC++_wechathookWeChatApi微信Api微信hook微信接口python微信接口java微信Ap