Sur cette page

QXmlLexicalHandler Class

La classe QXmlLexicalHandler fournit une interface permettant de récupérer le contenu lexical des données XML. En savoir plus...

En-tête : #include <QXmlLexicalHandler>
CMake : find_package(Qt6 REQUIRED COMPONENTS Core5Compat)
target_link_libraries(mytarget PRIVATE Qt6::Core5Compat)
qmake : QT += core5compat
Hérité par :

QXmlDefaultHandler

Remarque : toutes les fonctions de cette classe sont réentrantes.

Fonctions publiques

virtual ~QXmlLexicalHandler()
virtual bool comment(const QString &ch) = 0
virtual bool endCDATA() = 0
virtual bool endDTD() = 0
virtual bool endEntity(const QString &name) = 0
virtual QString errorString() const = 0
virtual bool startCDATA() = 0
virtual bool startDTD(const QString &name, const QString &publicId, const QString &systemId) = 0
virtual bool startEntity(const QString &name) = 0

Description détaillée

Les événements du gestionnaire lexical s'appliquent à l'ensemble du document, et pas seulement à l'élément document, et tous les événements du gestionnaire lexical apparaissent entre les événements startDocument et endDocument du gestionnaire de contenu.

Vous pouvez définir le gestionnaire lexical à l’aide de la fonction ` QXmlReader::setLexicalHandler()`.

La conception de cette interface s’appuie sur l’extension LexicalHandler de SAX2.

L'interface fournit les fonctions ` startDTD()`, ` endDTD()`, ` startEntity()`, ` endEntity()`, ` startCDATA()`, ` endCDATA()` et ` comment()`.

Voir également QXmlDTDHandler, QXmlDeclHandler, QXmlContentHandler, QXmlEntityResolver et QXmlErrorHandler.

Documentation sur les fonctions membres

[virtual noexcept] QXmlLexicalHandler::~QXmlLexicalHandler()

Supprime le gestionnaire lexical.

[pure virtual] bool QXmlLexicalHandler::comment(const QString &ch)

Le lecteur appelle cette fonction pour signaler la présence d'un commentaire XML n'importe où dans le document. Il renvoie le texte du commentaire dans ` ch`.

Si cette fonction renvoie « false », le lecteur interrompt l'analyse et signale une erreur. Le lecteur utilise la fonction ` errorString()` pour obtenir le message d'erreur.

[pure virtual] bool QXmlLexicalHandler::endCDATA()

Le lecteur appelle cette fonction pour signaler la fin d'une section CDATA.

Si cette fonction renvoie « false », le lecteur interrompt l'analyse et signale une erreur. Le lecteur utilise la fonction errorString() pour obtenir le message d'erreur.

Voir également startCDATA() et QXmlContentHandler::characters().

[pure virtual] bool QXmlLexicalHandler::endDTD()

Le lecteur appelle cette fonction pour signaler la fin d'une déclaration DTD, le cas échéant.

Si cette fonction renvoie « false », le lecteur interrompt l'analyse et signale une erreur. Le lecteur utilise la fonction errorString() pour obtenir le message d'erreur.

Voir également ` startDTD()`.

[pure virtual] bool QXmlLexicalHandler::endEntity(const QString &name)

Le lecteur appelle cette fonction pour signaler la fin d'une entité appelée « name ».

À chaque appel à ` startEntity()`, il correspond un appel à `endEntity()`. Les appels à ` startEntity()` et `endEntity()` sont correctement imbriqués.

Si cette fonction renvoie false, le lecteur interrompt l’analyse et signale une erreur. Le lecteur utilise la fonction errorString() pour récupérer le message d’erreur.

Voir également startEntity(), QXmlContentHandler::skippedEntity() et QXmlSimpleReader::setFeature().

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

Le lecteur appelle cette fonction pour obtenir une chaîne d'erreur si l'une des fonctions de gestion renvoie la valeur « false ».

[pure virtual] bool QXmlLexicalHandler::startCDATA()

Le lecteur appelle cette fonction pour signaler le début d'une section CDATA. Le contenu de la section CDATA est renvoyé via la fonction QXmlContentHandler::characters(). Cette fonction est uniquement destinée à signaler la limite.

Si cette fonction renvoie ` false `, le lecteur interrompt l'analyse et signale une erreur. Le lecteur utilise la fonction ` errorString()` pour récupérer le message d'erreur.

Voir également endCDATA().

[pure virtual] bool QXmlLexicalHandler::startDTD(const QString &name, const QString &publicId, const QString &systemId)

Le lecteur appelle cette fonction pour signaler le début d’une déclaration DTD, le cas échéant. Il indique le nom du type de document dans ` name`, l’identifiant public dans ` publicId ` et l’identifiant système dans ` systemId`.

Si l’identifiant public est absent, publicId est défini sur une chaîne vide. Si l’identifiant système est absent, systemId est défini sur une chaîne vide. Notez qu’un XML comportant un identifiant public mais pas d’identifiant système n’est pas valide ; dans ce cas, une erreur d’analyse se produira.

Toutes les déclarations signalées via QXmlDTDHandler ou QXmlDeclHandler apparaissent entre les appels startDTD() et endDTD().

Si cette fonction renvoie false, le lecteur interrompt l’analyse et signale une erreur. Le lecteur utilise la fonction errorString() pour récupérer le message d’erreur.

Voir également endDTD().

[pure virtual] bool QXmlLexicalHandler::startEntity(const QString &name)

Le lecteur appelle cette fonction pour signaler le début d'une entité appelée « name ».

Notez que si l'entité est inconnue, le lecteur la signale via QXmlContentHandler::skippedEntity() et non via cette fonction.

Si cette fonction renvoie « false », le lecteur interrompt l'analyse et signale une erreur. Le lecteur utilise la fonction « errorString() » pour récupérer le message d'erreur.

Voir également endEntity() et QXmlSimpleReader::setFeature().

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.