QXmlLexicalHandler Class
QXmlLexicalHandler クラスは、XML データの字句内容を報告するためのインターフェイスを提供します。詳細...
ヘッダー | #include <QXmlLexicalHandler> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core5Compat) target_link_libraries(mytarget PRIVATE Qt6::Core5Compat) |
qmake: | QT += core5compat |
継承元: |
注意:このクラスの関数はすべてリエントラントです。
パブリック関数
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 |
詳細説明
レキシカルハンドラのイベントはドキュメント要素だけでなくドキュメント全体に適用され、すべてのレキシカルハンドラのイベントはコンテンツハンドラの startDocument イベントと endDocument イベントの間に現れます。
レキシカルハンドラはQXmlReader::setLexicalHandler() で設定できます。
このインターフェイスの設計は、SAX2 拡張の LexicalHandler に基づいています。
このインターフェイスはstartDTD(),endDTD(),startEntity(),endEntity(),startCDATA(),endCDATA(),comment() 関数を提供します。
QXmlDTDHandler 、QXmlDeclHandler 、QXmlContentHandler 、QXmlEntityResolver 、QXmlErrorHandlerも参照 。
メンバー関数ドキュメント
[virtual noexcept]
QXmlLexicalHandler::~QXmlLexicalHandler()
レキシカル・ハンドラを破棄する。
[pure virtual]
bool QXmlLexicalHandler::comment(const QString &ch)
リーダは、文書内の任意の場所にXMLコメントを報告するためにこの関数を呼び出す。この関数はコメントのテキストをch で報告する。
この関数がfalse
を返した場合、リーダは解析を中止し、エラーを報告します。リーダは関数errorString() を使用してエラーメッセージを取得します。
[pure virtual]
bool QXmlLexicalHandler::endCDATA()
リーダーはCDATAセクションの終了を報告するためにこの関数を呼び出す。
この関数がfalse
を返した場合、リーダはパースを中止し、エラーを報告します。リーダーは、errorString() 関数を使用してエラーメッセージを取得します。
startCDATA() およびQXmlContentHandler::characters()も参照 。
[pure virtual]
bool QXmlLexicalHandler::endDTD()
リーダは、DTD宣言の終了を報告するためにこの関数を呼び出す。
この関数がfalse
を返した場合、リーダは解析を中止し、エラーを報告します。リーダーは関数errorString() を使用してエラーメッセージを取得します。
startDTD()も参照 。
[pure virtual]
bool QXmlLexicalHandler::endEntity(const QString &name)
リーダはこの関数を呼び出して、name というエンティティの終了を報告する。
startEntity() の呼び出しごとに、対応する endEntity() の呼び出しがあります。startEntity() および endEntity() の呼び出しは、適切に入れ子になります。
この関数がfalse
を返すと、リーダは解析を停止してエラーを報告します。リーダは、関数errorString() を使用してエラー・メッセージを取得します。
startEntity()、QXmlContentHandler::skippedEntity()、QXmlSimpleReader::setFeature()も参照してください 。
[pure virtual]
QString QXmlLexicalHandler::errorString() const
ハンドラー関数のいずれかがfalse
を返した場合、リーダーはこの関数を呼び出してエラー文字列を取得する。
[pure virtual]
bool QXmlLexicalHandler::startCDATA()
リーダーは、CDATAセクションの開始を報告するためにこの関数を呼び出す。CDATAセクションの内容は、QXmlContentHandler::characters ()関数を通して報告される。この関数は、境界を報告することのみを目的としています。
この関数がfalse
を返した場合、リーダはパースを中止し、エラーを報告する。エラーメッセージを取得するには、errorString() 関数を使用します。
endCDATA()も参照 。
[pure virtual]
bool QXmlLexicalHandler::startDTD(const QString &name, const QString &publicId, const QString &systemId)
リーダは、DTD宣言がある場合、その開始を報告するためにこの関数を呼び出す。この関数は、文書型の名前をname に、公開識別子をpublicId に、システム識別子をsystemId に報告する。
パブリック識別子がない場合、publicId は空文字列に設定される。システム識別子がない場合、systemId は空文字列に設定される。このような場合、解析エラーが発生する。
このような場合、解析エラーが発生する。QXmlDTDHandler またはQXmlDeclHandler によって報告される宣言はすべて、startDTD() とendDTD() 呼び出しの間に現れる。
この関数がfalse
を返した場合、リーダはパースを中止し、エラーを報告する。リーダーは、errorString() 関数を使用してエラー・メッセージを取得する。
endDTD()も参照 。
[pure virtual]
bool QXmlLexicalHandler::startEntity(const QString &name)
リーダはこの関数を呼び出して、name というエンティティの開始を報告する。
実体が不明な場合、リーダはこの関数ではなくQXmlContentHandler::skippedEntity() を通してそれを報告することに注意。
この関数がfalse
を返した場合、リーダは解析を中止してエラーを報告します。リーダは、関数errorString() を使用してエラー・メッセージを取得します。
endEntity() およびQXmlSimpleReader::setFeature()も参照 。
© 2025 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.