QXmlEntityResolver 類

QXmlEntityResolver 類提供用於解析 XML 數據包含外部實體的接口。 更多...

頭: #include <QXmlEntityResolver>
qmake: QT += xml
繼承者:

QXmlDefaultHandler

該類已過時。 提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

注意: 此類的所有函數 可重入 .

公共函數

virtual ~QXmlEntityResolver ()
virtual QString errorString () const = 0
virtual bool resolveEntity (const QString & publicId , const QString & systemId , QXmlInputSource *& ret ) = 0

詳細描述

If an application needs to implement customized handling for external entities, it must implement this interface, i.e. resolveEntity (), and register it with QXmlReader::setEntityResolver ().

另請參閱 QXmlDTDHandler , QXmlDeclHandler , QXmlContentHandler , QXmlErrorHandler ,和 QXmlLexicalHandler .

成員函數文檔編製

[虛擬] QXmlEntityResolver:: ~QXmlEntityResolver ()

銷毀實體解析器。

[pure virtual] QString QXmlEntityResolver:: errorString () const

The reader calls this function to get an error string if any of the handler functions returns false .

[pure virtual] bool QXmlEntityResolver:: resolveEntity (const QString & publicId , const QString & systemId , QXmlInputSource *& ret )

The reader calls this function before it opens any external entity, except the top-level document entity. The application may request the reader to resolve the entity itself ( ret is 0) or to use an entirely different input source ( ret points to the input source).

The reader deletes the input source ret when it no longer needs it, so you should allocate it on the heap with new .

自變量 publicId is the public identifier of the external entity, systemId is the system identifier of the external entity and ret is the return value of this function. If ret is 0 the reader should resolve the entity itself, if it is non-zero it must point to an input source which the reader uses instead.

若此函數返迴 false the reader stops parsing and reports an error. The reader uses the function errorString () to get the error message.