Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Tous les espaces de nom  ·  Toutes les classes  ·  Classes principales  ·  Annotées  ·  Classes groupées  ·  Modules  ·  Fonctions  · 

QXmlReader Class Reference
[QtXml module]

The QXmlReader class provides an interface for XML readers (i.e. parsers). More...

 #include <QXmlReader>

Inherited by QXmlSimpleReader.

Note: All the functions in this class are reentrant.

Public Functions


Detailed Description

The QXmlReader class provides an interface for XML readers (i.e. parsers).

This abstract class provides an interface for all of Qt's XML readers. Currently there is only one implementation of a reader included in Qt's XML module: QXmlSimpleReader. In future releases there might be more readers with different properties available (e.g. a validating parser).

The design of the XML classes follows the SAX2 Java interface, with the names adapted to fit Qt naming conventions. It should be very easy for anybody who has worked with SAX2 to get started with the Qt XML classes.

All readers use the class QXmlInputSource to read the input document. Since you are normally interested in particular content in the XML document, the reader reports the content through special handler classes (QXmlDTDHandler, QXmlDeclHandler, QXmlContentHandler, QXmlEntityResolver, QXmlErrorHandler and QXmlLexicalHandler), which you must subclass, if you want to process the contents.

Since the handler classes only describe interfaces you must implement all the functions. We provide the QXmlDefaultHandler class to make this easier: it implements a default behavior (do nothing) for all functions, so you can subclass it and just implement the functions you are interested in.

Features and properties of the reader can be set with setFeature() and setProperty() respectively. You can set the reader to use your own subclasses with setEntityResolver(), setDTDHandler(), setContentHandler(), setErrorHandler(), setLexicalHandler() and setDeclHandler(). The parse itself is started with a call to parse().

See also QXmlSimpleReader.


Member Function Documentation

QXmlReader::~QXmlReader ()   [virtual]

Destroys the reader.

QXmlDTDHandler * QXmlReader::DTDHandler () const   [pure virtual]

Returns the DTD handler or 0 if none was set.

See also setDTDHandler().

QXmlContentHandler * QXmlReader::contentHandler () const   [pure virtual]

Returns the content handler or 0 if none was set.

See also setContentHandler().

QXmlDeclHandler * QXmlReader::declHandler () const   [pure virtual]

Returns the declaration handler or 0 if none was set.

See also setDeclHandler().

QXmlEntityResolver * QXmlReader::entityResolver () const   [pure virtual]

Returns the entity resolver or 0 if none was set.

See also setEntityResolver().

QXmlErrorHandler * QXmlReader::errorHandler () const   [pure virtual]

Returns the error handler or 0 if none is set.

See also setErrorHandler().

bool QXmlReader::feature ( const QString & name, bool * ok = 0 ) const   [pure virtual]

If the reader has the feature called name, the feature's value is returned. If no such feature exists the return value is undefined.

If ok is not 0: *ok is set to true if the reader has the feature called name; otherwise *ok is set to false.

See also setFeature() and hasFeature().

bool QXmlReader::hasFeature ( const QString & name ) const   [pure virtual]

Returns true if the reader has the feature called name; otherwise returns false.

See also feature() and setFeature().

bool QXmlReader::hasProperty ( const QString & name ) const   [pure virtual]

Returns true if the reader has the property name; otherwise returns false.

See also property() and setProperty().

QXmlLexicalHandler * QXmlReader::lexicalHandler () const   [pure virtual]

Returns the lexical handler or 0 if none was set.

See also setLexicalHandler().

bool QXmlReader::parse ( const QXmlInputSource * input )   [pure virtual]

Reads an XML document from input and parses it. Returns true if the parsing was successful; otherwise returns false.

void * QXmlReader::property ( const QString & name, bool * ok = 0 ) const   [pure virtual]

If the reader has the property name, this function returns the value of the property; otherwise the return value is undefined.

If ok is not 0: if the reader has the name property *ok is set to true; otherwise *ok is set to false.

See also setProperty() and hasProperty().

void QXmlReader::setContentHandler ( QXmlContentHandler * handler )   [pure virtual]

Sets the content handler to handler.

See also contentHandler().

void QXmlReader::setDTDHandler ( QXmlDTDHandler * handler )   [pure virtual]

Sets the DTD handler to handler.

See also DTDHandler().

void QXmlReader::setDeclHandler ( QXmlDeclHandler * handler )   [pure virtual]

Sets the declaration handler to handler.

See also declHandler().

void QXmlReader::setEntityResolver ( QXmlEntityResolver * handler )   [pure virtual]

Sets the entity resolver to handler.

See also entityResolver().

void QXmlReader::setErrorHandler ( QXmlErrorHandler * handler )   [pure virtual]

Sets the error handler to handler. Clears the error handler if handler is 0.

See also errorHandler().

void QXmlReader::setFeature ( const QString & name, bool value )   [pure virtual]

Sets the feature called name to the given value. If the reader doesn't have the feature nothing happens.

See also feature() and hasFeature().

void QXmlReader::setLexicalHandler ( QXmlLexicalHandler * handler )   [pure virtual]

Sets the lexical handler to handler.

See also lexicalHandler().

void QXmlReader::setProperty ( const QString & name, void * value )   [pure virtual]

Sets the property name to value. If the reader doesn't have the property nothing happens.

See also property() and hasProperty().

Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 94
  2. Apercevoir la troisième dimension ou l'utilisation multithreadée d'OpenGL dans Qt, un article des Qt Quarterly traduit par Guillaume Belz 0
  3. Pourquoi les programmeurs sont-ils moins payés que les gestionnaires de programmes ? Manquent-ils de pouvoir de négociation ? 43
  4. Les développeurs ignorent-ils trop les failles découvertes dans leur code ? Prenez-vous en compte les remarques des autres ? 17
  5. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  6. Qt Commercial : Digia organise un webinar gratuit le 27 mars sur la conception d'interfaces utilisateur et d'applications avec le framework 0
  7. 2017 : un quinquennat pour une nouvelle version du C++ ? Possible, selon Herb Sutter 9
Page suivante

Le Qt Labs au hasard

Logo

QMake et au-delà, le retour

Les Qt Labs sont les laboratoires des développeurs de Qt, où ils peuvent partager des impressions sur le framework, son utilisation, ce que pourrait être son futur. Lire l'article.

Communauté

Ressources

Liens utiles

Contact

  • Vous souhaitez rejoindre la rédaction ou proposer un tutoriel, une traduction, une question... ? Postez dans le forum Contribuez ou contactez-nous par MP ou par email (voir en bas de page).

Qt dans le magazine

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 4.3
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web