System::Xml::XmlTextReader 类

XmlTextReader class

表示一个读取器,提供对 XML 数据的快速、非缓存、仅向前访问。

class XmlTextReader : public System::Xml::XmlReader,
                      public System::Xml::IXmlLineInfo,
                      public System::Xml::IXmlNamespaceResolver

方法

方法描述
Close() overrideXmlReader::get_ReadState 更改为 Closed
get_AttributeCount() override返回当前节点的属性数量。
get_BaseURI() override返回当前节点的基础 URI。
get_CanReadBinaryContent() override返回一个值,指示 XmlTextReader 是否实现二进制内容读取方法。
get_CanReadValueChunk() override返回一个值,指示 XmlTextReader 是否实现 XmlReader::ReadValueChunk 方法。
get_CanResolveEntity() override返回一个值,指示此读取器是否能够解析和解析实体。
get_Depth() override返回 XML 文档中当前节点的深度。
get_DtdProcessing()返回 DtdProcessing 枚举。
get_Encoding()返回文档的编码。
get_EntityHandling()返回一个值,指定读取器如何处理实体。
get_EOF() override返回一个值,指示读取器是否位于流的末尾。
get_HasValue() override返回一个值,指示当前节点是否可以拥有除 String::Empty 之外的 XmlTextReader::get_Value
get_IsDefault() override返回一个值,指示当前节点是否为从 DTD 或模式中定义的默认值生成的属性。
get_IsEmptyElement() override返回一个值,指示当前节点是否为空元素(例如,)。
get_LineNumber() override返回当前行号。
get_LinePosition() override返回当前列位置。
get_LocalName() override返回当前节点的本地名称。
get_Name() override返回当前节点的限定名称。
get_Namespaces()返回一个值,指示是否启用命名空间支持。
get_NamespaceURI() override返回读取器所在节点的命名空间 URI(如 W3C 命名空间规范所定义)。
get_NameTable() override返回与此实现关联的 XmlNameTable
get_NodeType() override返回当前节点的类型。
get_Normalization()返回一个值,指示是否规范化空白和属性值。
get_Prefix() override返回与当前节点关联的命名空间前缀。
get_ProhibitDtd()返回一个值,指示是否允许 DTD 处理。
get_QuoteChar() override返回用于包围属性节点值的引号字符。
get_ReadState() override返回读取器的状态。
get_Value() override返回当前节点的文本值。
get_WhitespaceHandling()返回一个值,指定空白的处理方式。
get_XmlLang() override返回当前的 xml:lang 范围。
get_XmlSpace() override返回当前 xml:space 范围。
GetAttribute(String) override返回具有指定名称的属性的值。
GetAttribute(String, String) override返回具有指定本地名称和命名空间 URI 的属性的值。
GetAttribute(int32_t) override返回具有指定索引的属性的值。
GetNamespacesInScope(XmlNamespaceScope) override返回一个包含当前作用域内所有命名空间的集合。
GetRemainder()返回缓冲的 XML 的剩余部分。
HasLineInfo() override返回一个值,指示该类是否能够返回行信息。
LookupNamespace(const String&) override解析当前元素作用域中的命名空间前缀。
MoveToAttribute(String) override移动到具有指定名称的属性。
MoveToAttribute(String, String) override移动到具有指定本地名称和命名空间 URI 的属性。
MoveToAttribute(int32_t) override移动到具有指定索引的属性。
MoveToElement() override移动到包含当前属性节点的元素。
MoveToFirstAttribute() override移动到第一个属性。
MoveToNextAttribute() override移动到下一个属性。
Read() override从流中读取下一个节点。
ReadAttributeValue() override将属性值解析为一个或多个 TextEntityReferenceEndEntity 节点。
ReadBase64(const ArrayPtr<uint8_t>&, int32_t, int32_t)解码 Base64 并返回解码后的二进制字节。
ReadBinHex(const ArrayPtr<uint8_t>&, int32_t, int32_t)解码 BinHex 并返回解码后的二进制字节。
ReadChars(const ArrayPtr<char16_t>&, int32_t, int32_t)将元素的文本内容读取到字符缓冲区中。此方法旨在通过连续调用来读取大规模嵌入文本流。
ReadContentAsBase64(ArrayPtr<uint8_t>, int32_t, int32_t) override读取内容并返回 Base64 解码后的二进制字节。
ReadContentAsBinHex(ArrayPtr<uint8_t>, int32_t, int32_t) override读取内容并返回 BinHex 解码后的二进制字节。
ReadElementContentAsBase64(ArrayPtr<uint8_t>, int32_t, int32_t) override读取元素并解码 Base64 内容。
ReadElementContentAsBinHex(ArrayPtr<uint8_t>, int32_t, int32_t) override读取元素并解码 BinHex 内容。
ReadString() override将元素或文本节点的内容读取为字符串。
ResetState()将读取器的状态重置为 ReadState::Initial
ResolveEntity() override解析 EntityReference 节点的实体引用。
set_DtdProcessing(System::Xml::DtdProcessing)设置 DtdProcessing 枚举。
set_EntityHandling(System::Xml::EntityHandling)设置一个值,指定读取器如何处理实体。
set_Namespaces(bool)设置一个值,指示是否启用命名空间支持。
set_Normalization(bool)设置一个值,指示是否规范化空白和属性值。
set_ProhibitDtd(bool)设置一个值,指示是否允许 DTD 处理。
set_WhitespaceHandling(System::Xml::WhitespaceHandling)设置一个值,指定空白的处理方式。
set_XmlResolver(const SharedPtr<System::Xml::XmlResolver>&)设置用于解析 DTD 引用的 XmlResolver
Skip() override跳过当前节点的子节点。
XmlTextReader(const SharedPtr<IO::Stream>&)使用指定的流初始化 XmlTextReader 类的新实例。
XmlTextReader(const String&, const SharedPtr<IO::Stream>&)使用指定的 URL 和流初始化 XmlTextReader 类的新实例。
XmlTextReader(const SharedPtr<IO::Stream>&, const SharedPtr<XmlNameTable>&)使用指定的流和 XmlNameTable 初始化 XmlTextReader 类的新实例。
XmlTextReader(const String&, const SharedPtr<IO::Stream>&, const SharedPtr<XmlNameTable>&)使用指定的 URL、流和 XmlNameTable 初始化 XmlTextReader 类的新实例。
XmlTextReader(const SharedPtr<IO::TextReader>&)使用指定的 TextReader 初始化 XmlTextReader 类的新实例。
XmlTextReader(const String&, const SharedPtr<IO::TextReader>&)使用指定的 URL 和 TextReader 初始化 XmlTextReader 类的新实例。
XmlTextReader(const SharedPtr<IO::TextReader>&, const SharedPtr<XmlNameTable>&)使用指定的 TextReader 和 XmlNameTable 初始化 XmlTextReader 类的新实例。
XmlTextReader(const String&, const SharedPtr<IO::TextReader>&, const SharedPtr<XmlNameTable>&)使用指定的 URL、TextReader 和 XmlNameTable 初始化 XmlTextReader 类的新实例。
XmlTextReader(const SharedPtr<IO::Stream>&, XmlNodeType, const SharedPtr<XmlParserContext>&)使用指定的流、XmlNodeTypeXmlParserContext 初始化 XmlTextReader 类的新实例。
XmlTextReader(const String&, XmlNodeType, const SharedPtr<XmlParserContext>&)使用指定的字符串、XmlNodeTypeXmlParserContext 初始化 XmlTextReader 类的新实例。
XmlTextReader(const String&)使用指定的文件初始化 XmlTextReader 类的新实例。
XmlTextReader(const String&, const SharedPtr<XmlNameTable>&)使用指定的文件和 XmlNameTable 初始化 XmlTextReader 类的新实例。

Typedefs

类型定义描述
Ptr此类实例的共享指针别名。

备注

建议改用 XmlReader 类。

此类的对象只能使用 System::MakeObject() 函数分配。切勿在栈上或使用 new 运算符创建此类型的实例,因为这会导致运行时错误和/或断言故障。始终将此类包装到 System::SmartPtr 指针中,并使用该指针将其作为参数传递给函数。

另见