QXmlReader Class
QXmlReader 클래스는 XML 리더(즉, 파서)를 위한 인터페이스를 제공합니다. 더 보기...
Header: | #include <QXmlReader> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core5Compat) target_link_libraries(mytarget PRIVATE Qt6::Core5Compat) |
qmake: | QT += core5compat |
상속 대상: |
참고: 이 클래스의 모든 함수는 재진입됩니다.
공용 함수
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 모듈에 포함된 리더의 구현은 단 하나뿐입니다: QXmlSimpleReader. 향후 릴리스에서는 다른 속성(예: 유효성 검사 구문 분석기)을 가진 더 많은 리더가 제공될 수 있습니다.
XML 클래스의 디자인은 SAX2 Java 인터페이스를 따르며, 이름은 Qt 명명 규칙에 맞게 조정되었습니다. SAX2로 작업해 본 사람이라면 누구나 Qt XML 클래스를 매우 쉽게 시작할 수 있습니다.
모든 독자는 QXmlInputSource 클래스를 사용하여 입력 문서를 읽습니다. 일반적으로 XML 문서의 특정 콘텐츠에 관심이 있기 때문에 리더는 특수 핸들러 클래스(QXmlDTDHandler, QXmlDeclHandler, QXmlContentHandler, QXmlEntityResolver, QXmlErrorHandler 및 QXmlLexicalHandler)를 통해 콘텐츠를 보고하며, 콘텐츠를 처리하려면 반드시 서브클래싱해야 합니다.
핸들러 클래스는 인터페이스만 설명하므로 모든 기능을 구현해야 합니다. 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 이라는 기능이 있는 경우 해당 기능의 값이 반환됩니다. 이러한 기능이 없으면 반환 값은 정의되지 않습니다.
ok 이 아닌 경우 nullptr
: *
ok 리더에 name 라는 기능이 있는 경우 true로 설정되고, 그렇지 않으면 *
ok false로 설정됩니다.
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 속성이 있는 경우 이 함수는 해당 속성 값을 반환하고, 그렇지 않은 경우 반환 값은 정의되지 않습니다.
ok 이 아닌 경우 nullptr
: 리더에 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)
name 속성을 value 으로 설정합니다. 리더에 속성이 없으면 아무 일도 일어나지 않습니다.
property() 및 hasProperty()도 참조하세요 .
© 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.