QTextDocumentWriter Class
Die Klasse QTextDocumentWriter bietet eine formatunabhängige Schnittstelle zum Schreiben von QTextDocument in Dateien oder andere Geräte. Mehr...
Kopfzeile: | #include <QTextDocumentWriter> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QTextDocumentWriter ist Teil der Rich Text Processing APIs.
Öffentliche Funktionen
QTextDocumentWriter() | |
QTextDocumentWriter(QIODevice *device, const QByteArray &format) | |
QTextDocumentWriter(const QString &fileName, const QByteArray &format = QByteArray()) | |
~QTextDocumentWriter() | |
QIODevice * | device() const |
QString | fileName() const |
QByteArray | format() const |
void | setDevice(QIODevice *device) |
void | setFileName(const QString &fileName) |
void | setFormat(const QByteArray &format) |
bool | write(const QTextDocument *document) |
bool | write(const QTextDocumentFragment &fragment) |
Statische öffentliche Mitglieder
QList<QByteArray> | supportedDocumentFormats() |
Detaillierte Beschreibung
Um ein Dokument zu schreiben, konstruieren Sie ein QTextDocumentWriter-Objekt entweder mit einem Dateinamen oder einem Geräteobjekt und geben das zu schreibende Dokumentformat an. Sie können einen Writer konstruieren und das Format später mit setFormat() festlegen.
Rufen Sie write() auf, um das Dokument auf das Gerät zu schreiben. Wenn das Dokument erfolgreich geschrieben wurde, gibt diese Funktion true
zurück. Tritt jedoch ein Fehler beim Schreiben des Dokuments auf, gibt sie false zurück.
Rufen Sie supportedDocumentFormats() auf, um eine Liste der Formate zu erhalten, die QTextDocumentWriter schreiben kann.
Da die Fähigkeiten der unterstützten Ausgabeformate sehr unterschiedlich sind, gibt der Writer einfach die entsprechende Teilmenge von Objekten für jedes Format aus. Dazu gehören in der Regel der formatierte Text und die in einem Dokument enthaltenen Bilder.
Dokumentation der Mitgliedsfunktionen
QTextDocumentWriter::QTextDocumentWriter()
Konstruiert ein leeres QTextDocumentWriter-Objekt. Vor dem Schreiben müssen Sie setFormat() aufrufen, um ein Dokumentformat festzulegen, dann setDevice() oder setFileName().
QTextDocumentWriter::QTextDocumentWriter(QIODevice *device, const QByteArray &format)
Konstruiert ein QTextDocumentWriter-Objekt, um in das angegebene device in dem durch format angegebenen Dokumentformat zu schreiben.
[explicit]
QTextDocumentWriter::QTextDocumentWriter(const QString &fileName, const QByteArray &format = QByteArray())
Konstruiert ein QTextDocumentWriter-Objekt, das in eine Datei mit dem Namen fileName schreibt, wobei das durch format angegebene Dokumentformat verwendet wird. Wenn format nicht angegeben wird, erkennt QTextDocumentWriter das Dokumentformat durch Überprüfung der Erweiterung von fileName.
[noexcept]
QTextDocumentWriter::~QTextDocumentWriter()
Zerstört das Objekt QTextDocumentWriter.
QIODevice *QTextDocumentWriter::device() const
Gibt das aktuell zugewiesene Gerät zurück, oder nullptr
, wenn kein Gerät zugewiesen wurde.
Siehe auch setDevice().
QString QTextDocumentWriter::fileName() const
Wenn das aktuell zugewiesene Gerät QFile ist oder wenn setFileName() aufgerufen wurde, gibt diese Funktion den Namen der Datei zurück, in die geschrieben werden soll. In allen anderen Fällen gibt sie eine leere Zeichenkette zurück.
Siehe auch setFileName() und setDevice().
QByteArray QTextDocumentWriter::format() const
Gibt das für das Schreiben von Dokumenten verwendete Format zurück.
Siehe auch setFormat().
void QTextDocumentWriter::setDevice(QIODevice *device)
Setzt das Gerät des Schreibers auf die angegebene device. Wurde bereits ein Gerät gesetzt, wird das alte Gerät entfernt, ansonsten bleibt es unverändert.
Wenn das Gerät noch nicht geöffnet ist, versucht QTextDocumentWriter, das Gerät im Modus WriteOnly durch Aufruf von open() zu öffnen.
Hinweis: Dies funktioniert nicht bei bestimmten Geräten, wie QProcess, QTcpSocket und QUdpSocket, bei denen eine gewisse Konfiguration erforderlich ist, bevor das Gerät geöffnet werden kann.
Siehe auch device() und setFileName().
void QTextDocumentWriter::setFileName(const QString &fileName)
Legt den Namen der Datei fest, die in fileName geschrieben werden soll. Intern erstellt QTextDocumentWriter eine Datei QFile, öffnet sie im Modus WriteOnly und verwendet diese Datei beim Schreiben des Dokuments.
Siehe auch fileName() und setDevice().
void QTextDocumentWriter::setFormat(const QByteArray &format)
Legt das Format fest, mit dem Dokumente in das angegebene format geschrieben werden. format ist eine von der Groß- und Kleinschreibung unabhängige Textzeichenfolge. Ein Beispiel:
QTextDocumentWriter writer; writer.setFormat("odf"); // same as writer.setFormat("ODF");
Sie können supportedDocumentFormats() aufrufen, um die vollständige Liste der Formate zu erhalten, die QTextDocumentWriter unterstützt.
Siehe auch format().
[static]
QList<QByteArray> QTextDocumentWriter::supportedDocumentFormats()
Gibt die Liste der von QTextDocumentWriter unterstützten Dokumentformate zurück.
Standardmäßig kann Qt die folgenden Formate schreiben:
Format | Beschreibung |
---|---|
Klartext | Einfacher Text |
HTML | HyperText Markup Language |
Markdown | Markdown (CommonMark oder GitHub-Dialekte) |
ODF | OpenDocument-Format |
Siehe auch setFormat().
bool QTextDocumentWriter::write(const QTextDocument *document)
Schreibt die angegebene document in das zugewiesene Gerät oder die Datei und gibt bei Erfolg true
zurück, andernfalls false
.
bool QTextDocumentWriter::write(const QTextDocumentFragment &fragment)
Schreibt das durch fragment angegebene Dokumentfragment auf das zugewiesene Gerät oder in die zugewiesene Datei und gibt bei Erfolg true
zurück; andernfalls false
.
© 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.