QXmlReader 类为 XML 读取器 (即:剖析器) 提供接口。 更多...
| 头: | #include <QXmlReader> | 
| qmake: | QT += xml | 
| 继承者: | 
该类已过时。 提供它是为使旧源代码能继续工作。强烈建议不要在新代码中使用它。
注意: 此类的所有函数 可重入 .
| virtual | ~QXmlReader () | 
| virtual QXmlDTDHandler * | DTDHandler () const = 0 | 
| virtual QXmlContentHandler * | contentHandler () const = 0 | 
| virtual QXmlDeclHandler * | declHandler () const = 0 | 
| virtual QXmlEntityResolver * | entityResolver () const = 0 | 
| virtual QXmlErrorHandler * | errorHandler () const = 0 | 
| virtual bool | feature (const QString & name , bool * ok = nullptr) const = 0 | 
| virtual bool | hasFeature (const QString & name ) const = 0 | 
| virtual bool | hasProperty (const QString & name ) const = 0 | 
| virtual QXmlLexicalHandler * | lexicalHandler () const = 0 | 
| virtual bool | parse (const QXmlInputSource * input ) = 0 | 
| virtual void * | property (const QString & name , bool * ok = nullptr) const = 0 | 
| virtual void | setContentHandler (QXmlContentHandler * handler ) = 0 | 
| virtual void | setDTDHandler (QXmlDTDHandler * handler ) = 0 | 
| virtual void | setDeclHandler (QXmlDeclHandler * handler ) = 0 | 
| virtual void | setEntityResolver (QXmlEntityResolver * handler ) = 0 | 
| virtual void | setErrorHandler (QXmlErrorHandler * handler ) = 0 | 
| virtual void | setFeature (const QString & name , bool value ) = 0 | 
| virtual void | setLexicalHandler (QXmlLexicalHandler * handler ) = 0 | 
| virtual void | setProperty (const QString & name , void * value ) = 0 | 
此抽象类为 Qt 的所有 XML 读取器提供接口。目前,Qt 的 XML 模块只包括一读取器实现: QXmlSimpleReader 。在未来发行中,可能有更多具有不同可用特性的读取器 (如:验证剖析器)。
XML 类的设计遵循 SAX2 Java 接口 ,采用名称拟合适应 Qt 命名约定。对于任何操作过 SAX2 的人来说,入门采用 Qt XML 类应该是很容易的。
所有读取器使用类 QXmlInputSource 以读取输入文档。由于通常对 XML 文档内容尤其感兴趣,因此读取器报告内容是透过特殊处理程序类 ( QXmlDTDHandler , QXmlDeclHandler , QXmlContentHandler , QXmlEntityResolver , QXmlErrorHandler and QXmlLexicalHandler ) 且必须子类化,若想要处理内容。
由于处理程序类仅描述接口,因此必须实现所有功能。我们提供 QXmlDefaultHandler 类使这变得更容易:它为所有功能实现默认行为 (什么都不做),因此可以子类化它并仅实现感兴趣功能。
可以设置读取器的特征和特性采用 setFeature () 和 setProperty () 分别。可以将读取器设为使用自己的子类采用 setEntityResolver (), setDTDHandler (), setContentHandler (), setErrorHandler (), setLexicalHandler () 和 setDeclHandler ()。开始解析本身采用调用 parse ().
注意:此类现被弃用,请使用 QXmlStreamReader or QDomDocument for reading XML files.
另请参阅 QXmlSimpleReader .
[虚拟]
						
						QXmlReader::
						
							~QXmlReader
						
						()
						
					销毁读取器。
[pure virtual]
						
						
							
								QXmlDTDHandler
							
						
						*QXmlReader::
						
							DTDHandler
						
						() const
						
					
						返回 DTD 处理程序或
						
nullptr
						
						若未设置。
					
另请参阅 setDTDHandler ().
[pure virtual]
						
						
							
								QXmlContentHandler
							
						
						*QXmlReader::
						
							contentHandler
						
						() const
						
					
						返回内容处理程序或
						
nullptr
						
						若未设置。
					
另请参阅 setContentHandler ().
[pure virtual]
						
						
							
								QXmlDeclHandler
							
						
						*QXmlReader::
						
							declHandler
						
						() const
						
					
						返回声明处理程序或
						
nullptr
						
						若未设置。
					
另请参阅 setDeclHandler ().
[pure virtual]
						
						
							
								QXmlEntityResolver
							
						
						*QXmlReader::
						
							entityResolver
						
						() const
						
					
						返回实体解析器或
						
nullptr
						
						若未设置。
					
另请参阅 setEntityResolver ().
[pure virtual]
						
						
							
								QXmlErrorHandler
							
						
						*QXmlReader::
						
							errorHandler
						
						() const
						
					
						返回错误处理程序或
						
nullptr
						
						若未设置。
					
另请参阅 setErrorHandler ().
[pure virtual]
						
						
							bool
						
						QXmlReader::
						
							feature
						
						(const
						
							
								QString
							
						
						&
						name
						,
						
							bool
						
						*
						
							ok
						
						= nullptr) const
						
					若读取器拥有的特征称为 name ,返回特征值。若不存在这样的特征,返回值未定义。
						若
						
							ok
						
						不是
						
nullptr
						
						:
						
*
						
						
							ok
						
						被设为 true 若读取器拥有的特征称为
						name
						;否则
						
*
						
						
							ok
						
						被设为 false。
					
另请参阅 setFeature () 和 hasFeature ().
[pure virtual]
						
						
							bool
						
						QXmlReader::
						
							hasFeature
						
						(const
						
							
								QString
							
						
						&
						name
						) const
						
					
						返回
						
true
						
						若读取器拥有的特征称为
						name
						;否则返回
						
false
						
						.
					
另请参阅 feature () 和 setFeature ().
[pure virtual]
						
						
							bool
						
						QXmlReader::
						
							hasProperty
						
						(const
						
							
								QString
							
						
						&
						name
						) const
						
					
						返回
						
true
						
						若读取器拥有特性
						name
						;否则返回
						
false
						
						.
					
另请参阅 property () 和 setProperty ().
[pure virtual]
						
						
							
								QXmlLexicalHandler
							
						
						*QXmlReader::
						
							lexicalHandler
						
						() const
						
					
						返回词法处理程序或
						
nullptr
						
						若未设置。
					
另请参阅 setLexicalHandler ().
[pure virtual]
						
						
							bool
						
						QXmlReader::
						
							parse
						
						(const
						
							
								QXmlInputSource
							
						
						*
						
							input
						
						)
						
					
						读取 XML 文档从
						
							input
						
						并剖析它。返回
						
true
						
						若剖析成功;否则返回
						
false
						
						.
					
[pure virtual]
						
						
							void
						
						*QXmlReader::
						
							property
						
						(const
						
							
								QString
							
						
						&
						name
						,
						
							bool
						
						*
						
							ok
						
						= nullptr) const
						
					若读取器拥有特性 name ,此函数返回特性值;否则返回值未定义。
						若
						
							ok
						
						不是
						
nullptr
						
						:若读取器拥有
						name
						property
						
*
						
						
							ok
						
						被设为 true;否则
						
*
						
						
							ok
						
						被设为 false。
					
另请参阅 setProperty () 和 hasProperty ().
[pure virtual]
						
						
							void
						
						QXmlReader::
						
							setContentHandler
						
						(
						
							
								QXmlContentHandler
							
						
						*
						
							handler
						
						)
						
					把内容处理程序设为 handler .
另请参阅 contentHandler ().
[pure virtual]
						
						
							void
						
						QXmlReader::
						
							setDTDHandler
						
						(
						
							
								QXmlDTDHandler
							
						
						*
						
							handler
						
						)
						
					把 DTD 处理程序设为 handler .
另请参阅 DTDHandler ().
[pure virtual]
						
						
							void
						
						QXmlReader::
						
							setDeclHandler
						
						(
						
							
								QXmlDeclHandler
							
						
						*
						
							handler
						
						)
						
					把声明处理程序设为 handler .
另请参阅 declHandler ().
[pure virtual]
						
						
							void
						
						QXmlReader::
						
							setEntityResolver
						
						(
						
							
								QXmlEntityResolver
							
						
						*
						
							handler
						
						)
						
					把实体解析器设为 handler .
另请参阅 entityResolver ().
[pure virtual]
						
						
							void
						
						QXmlReader::
						
							setErrorHandler
						
						(
						
							
								QXmlErrorHandler
							
						
						*
						
							handler
						
						)
						
					把错误处理程序设为 handler 。清零错误处理程序若 handler 为 0。
另请参阅 errorHandler ().
[pure virtual]
						
						
							void
						
						QXmlReader::
						
							setFeature
						
						(const
						
							
								QString
							
						
						&
						name
						,
						
							bool
						
						value
						)
						
					设置特征称为 name 到给定 value 。若读取器没有特征,则什么都不发生。
另请参阅 feature () 和 hasFeature ().
[pure virtual]
						
						
							void
						
						QXmlReader::
						
							setLexicalHandler
						
						(
						
							
								QXmlLexicalHandler
							
						
						*
						
							handler
						
						)
						
					把词法处理程序设为 handler .
另请参阅 lexicalHandler ().
[pure virtual]
						
						
							void
						
						QXmlReader::
						
							setProperty
						
						(const
						
							
								QString
							
						
						&
						name
						,
						
							void
						
						*
						value
						)
						
					设置特性 name to value 。若读取器没有特性,则什么都不发生。
另请参阅 property () 和 hasProperty ().