Spec-Zone.ru › Qt 5.11

Класс QXmlReader

Класс QXmlReader предоставляет интерфейс для XML-ридеров (т.е. парсеров). Подробнее...

Заголовок: #include <QXmlReader>
qmake: QT += xml
Наследуется от:

QXmlSimpleReader

  • Список всех членов, включая унаследованные
  • Устаревшие члены

Примечание: Все функции в этом классе являются реентерабельными.

Открытые функции

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

Подробное описание

Класс QXmlReader предоставляет интерфейс для XML-ридеров (т.е. парсеров).

Этот абстрактный класс предоставляет интерфейс для всех XML-ридеров Qt. В настоящее время в модуле XML Qt реализован только один ридер: QXmlSimpleReader. В будущих версиях могут быть доступны другие ридеры с различными свойствами (например, валидирующий парсер).

Структура XML-классов соответствует интерфейсу SAX2 Java, с именами, адаптированными для соответствия соглашениям об именовании Qt. Любой, кто работал с SAX2, легко освоит классы XML Qt.

Все ридеры используют класс QXmlInputSource для чтения входного документа. Поскольку вы обычно заинтересованы в определённом содержимом XML-документа, ридер сообщает о нём через специальные обработчики (QXmlDTDHandler, QXmlDeclHandler, QXmlContentHandler, QXmlEntityResolver, QXmlErrorHandler и QXmlLexicalHandler), которые вы должны переопределить, если хотите обработать это содержимое.

Поскольку классы обработчиков описывают только интерфейсы, вы должны реализовать все функции. Мы предоставляем класс QXmlDefaultHandler, чтобы это было проще: он реализует поведение по умолчанию (ничего не делать) для всех функций, поэтому вы можете унаследовать от него и реализовать только те функции, которые вас интересуют.

Функции и свойства ридера можно задать с помощью setFeature() и setProperty() соответственно. Вы можете использовать собственные подклассы с помощью setEntityResolver(), setDTDHandler(), setContentHandler(), setErrorHandler(), setLexicalHandler() и setDeclHandler(). Сам процесс разбора запускается вызовом parse().

См. также QXmlSimpleReader.

Документация по функциям-членам

[virtual] QXmlReader::~QXmlReader()

Удаляет ридер.

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

Возвращает обработчик DTD или 0, если он не был задан.

См. также setDTDHandler().

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

Возвращает обработчик содержимого или 0, если он не был задан.

См. также setContentHandler().

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

Возвращает обработчик декларации или 0, если он не был задан.

См. также setDeclHandler().

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

Возвращает обработчик сущностей или 0, если он не был задан.

См. также setEntityResolver().

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

Возвращает обработчик ошибок или 0, если он не задан.

См. также setErrorHandler().

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

Если у ридера есть функция с именем name, возвращается значение функции. Если такой функции не существует, возвращаемое значение неопределено.

Если ok не равен 0: *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

Возвращает обработчик лексического анализа или 0, если он не был задан.

См. также 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 не равен 0: если у ридера есть свойство name *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 в значение value. Если у ридера нет этого свойства, ничего не происходит.

См. также property() и hasProperty().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qxmlreader.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API