QXmlReader Class

QXmlReader クラスは、XML リーダー (つまりパーサー) 用のインターフェイスを提供します。詳細...

Header: #include <QXmlReader>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core5Compat)
target_link_libraries(mytarget PRIVATE Qt6::Core5Compat)
qmake: QT += core5compat
Inherited By:

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

詳細説明

この抽象クラスは、Qt の XML リーダーすべてのためのインターフェイスを提供します。現在、QtのXMLモジュールに含まれるリーダの実装は1つだけです:QXmlSimpleReader.将来のリリースでは、異なるプロパティを持つリーダが増えるかもしれません(例えば、検証パーサ)。

XMLクラスのデザインは、SAX2のJavaインターフェイスに従っており、Qtの命名規則に合わせて名前が調整されています。SAX2を扱ったことのある人であれば、誰でも簡単にQt XMLクラスを使い始めることができるはずです。

すべてのリーダは、入力ドキュメントを読み込むためにQXmlInputSource クラスを使用します。通常、XMLドキュメントの特定のコンテンツに興味があるので、リーダーは特別なハンドラ・クラス(QXmlDTDHandler,QXmlDeclHandler,QXmlContentHandler,QXmlEntityResolver,QXmlErrorHandler andQXmlLexicalHandler )を通してコンテンツを報告します。

ハンドラ・クラスはインターフェイスを記述しているだけなので、すべての関数を実装する必要があります。QXmlDefaultHandler すべての関数に対してデフォルトの動作(何もしない)を実装しているので、サブクラス化して興味のある関数だけを実装することができます。

リーダーの機能とプロパティは、それぞれsetFeature() とsetProperty() で設定できる。setEntityResolver ()、setDTDHandler ()、setContentHandler ()、setErrorHandler ()、setLexicalHandler ()、setDeclHandler ()で、独自のサブクラスを使用するようにリーダーを設定できる。パース自体は、parse()の呼び出しで開始されます。

このクラスは現在非推奨であることに注意してください。XMLファイルの読み込みにはQXmlStreamReader または QDomDocument を使用してください。

QXmlSimpleReaderも参照して ください。

メンバ関数 ドキュメント

[virtual noexcept] 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 という機能がある場合は、その機能の値が返されます。そのような機能がない場合、戻り値は未定義である。

oknullptr でない場合 :*ok は、リーダがname と呼ばれる機能を持っていれば真に設定され、そうでなければ*ok は偽に設定される。

setFeature() およびhasFeature()も参照

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

リーダーがname という機能を持っている場合はtrue を返し、そうでない場合はfalse を返す。

feature() およびsetFeature() も参照

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

リーダがname というプロパティを持っている場合はtrue を返し、そうでない場合はfalse を返す。

property() およびsetProperty() も参照

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

レキシカル・ハンドラを返すか、何も設定されていない場合はnullptr を返します。

setLexicalHandler()も参照

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

input から XML ドキュメントを読み込み、それをパースします。解析に成功した場合はtrue を返し、失敗した場合はfalse を返す。

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

リーダがname というプロパティを持つ場合、この関数はそのプロパティの値を返す。

oknullptr でない場合 : reader がname プロパティを持つ場合*ok は真に設定され、そうでない場合*ok は偽に設定される。

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)

プロパティnamevalue に設定します。 リーダがそのプロパティを持たない場合、何も起こりません。

property() およびhasProperty() も参照して ください。

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。