QXmlDeclHandler 类

QXmlDeclHandler 类提供了报告 XML 数据声明内容的接口。 更多...

头文件 #include <QXmlDeclHandler>
CMakefind_package(Qt6 REQUIRED COMPONENTS Core5Compat)
target_link_libraries(mytarget PRIVATE Qt6::Core5Compat)
qmakeQT += core5compat
继承自

QXmlDefaultHandler

注意: 此类中所有函数都是 重入的

公共函数

虚拟~QXmlDeclHandler()
虚拟 boolattributeDecl(const QString &eName, const QString &aName, const QString &type, const QString &valueDefault, const QString &value) = 0
虚拟 QStringerrorString() const = 0
虚拟 boolexternalEntityDecl(const QString &name, const QString &publicId, const QString &systemId) = 0
虚拟 boolinternalEntityDecl(const QString &name, const QString &value) = 0

详细说明

您可以通过 QXmlReader::setDeclHandler() 设置声明处理器。

此接口基于 SAX2 扩展 DeclHandler。

该接口提供了 attributeDecl()、internalEntityDecl() 和 externalEntityDecl() 函数。

参见QXmlDTDHandlerQXmlContentHandlerQXmlEntityResolverQXmlErrorHandlerQXmlLexicalHandler

成员函数说明

[虚函数] QXmlDeclHandler::~QXmlDeclHandler()

销毁声明处理器。

[纯虚函数] bool QXmlDeclHandler::attributeDecl(const QString &eName, const QString &aName, const QString &type, const QString &valueDefault, const QString &value)

读取器调用此函数来报告属性类型声明。只报告属性的第一个有效声明。

读取器将相关元素的名称传递给eName,以及属性名称传递给aName。它还传递一个表示属性类型的字符串在type中,以及表示属性默认值的字符串在valueDefault中。此字符串是以下之一:"#IMPLIED"、"#REQUIRED"、"#FIXED",或者一个空字符串(如果以上皆不适用)。读取器将属性的默认值传递给value。如果XML文件中没有指定默认值,则value为一个空字符串。

如果此函数返回false,则读取器停止解析并报告错误。读取器使用函数errorString()来获取错误信息。

[纯虚函数] QString QXmlDeclHandler::errorString() const

读取器在处理函数中任何一个返回false时调用此函数来获取错误字符串。

[纯虚函数] bool QXmlDeclHandler::externalEntityDecl(const QString &name, const QString &publicId, const QString &systemId)

读取器调用此函数来报告解析的外部实体声明。仅每个实体的有效(第一个)声明被报告。

读取器将实体的名称传递给name,公共标识符传递给publicId,以及系统标识符传递给systemId。如果没有指定公共标识符,它将在publicId中传递一个空字符串。

如果此函数返回false,则读取器停止解析并报告错误。读取器使用函数errorString()来获取错误信息。

[纯虚函数] bool QXmlDeclHandler::internalEntityDecl(const QString &name, const QString &value)

读取器调用此函数来报告内部实体声明。仅报告有效(第一个)声明。

读取器将实体的名称传递给name,将实体的值传递给value

如果此函数返回false,则读取器停止解析并报告错误。读取器使用函数errorString()来获取错误信息。

© 2024 Qt公司有限公司。本文档中的文档贡献为各所有者的版权。本处提供的文档根据自由软件基金会发布的1GNU自由文档许可证第1.3版的条款颁发。Qt及其相应的标志是芬兰和/或世界各地的Qt公司有限责任公司的商标。所有其他商标均为各自所有者的财产。