QTextDocumentWriter Class
Die Klasse „QTextDocumentWriter“ bietet eine formatunabhängige Schnittstelle zum Schreiben eines „ QTextDocument “ in Dateien oder auf andere Geräte. Mehr...
| Header: | #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-Verarbeitungs-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() |
Ausführliche Beschreibung
Um ein Dokument zu schreiben, erstellen Sie ein QTextDocumentWriter-Objekt entweder mit einem Dateinamen oder einem Geräteobjekt und geben Sie das zu schreibende Dokumentformat an. Sie können einen Writer erstellen 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 beim Schreiben des Dokuments jedoch ein Fehler auf, wird „false“ zurückgegeben.
Rufen Sie ` supportedDocumentFormats()` auf, um eine Liste der Formate zu erhalten, die `QTextDocumentWriter` schreiben kann.
Da die Möglichkeiten der unterstützten Ausgabeformate erheblich variieren, gibt der Writer für jedes Format lediglich die entsprechende Teilmenge an Objekten aus. Dazu gehören in der Regel der formatierte Text und die in einem Dokument enthaltenen Bilder.
Dokumentation der Member-Funktionen
QTextDocumentWriter::QTextDocumentWriter()
Erstellt ein leeres QTextDocumentWriter-Objekt. Vor dem Schreiben müssen Sie die Funktion „ setFormat()“ aufrufen, um ein Dokumentformat festzulegen, und anschließend entweder „ setDevice()“ oder „ setFileName()“.
QTextDocumentWriter::QTextDocumentWriter(QIODevice *device, const QByteArray &format)
Erstellt ein QTextDocumentWriter-Objekt, um in das angegebene „ device “ im durch „ format “ festgelegten Dokumentformat zu schreiben.
[explicit] QTextDocumentWriter::QTextDocumentWriter(const QString &fileName, const QByteArray &format = QByteArray())
Erstellt ein QTextDocumentWriter-Objekt, das unter Verwendung des durch format angegebenen Dokumentformats in eine Datei mit dem Namen fileName schreibt. Wird format nicht angegeben, ermittelt QTextDocumentWriter das Dokumentformat anhand der Dateiendung von fileName.
[noexcept] QTextDocumentWriter::~QTextDocumentWriter()
Löscht das Objekt „ QTextDocumentWriter “.
QIODevice *QTextDocumentWriter::device() const
Gibt das aktuell zugewiesene Gerät zurück oder „ nullptr “, falls kein Gerät zugewiesen wurde.
Siehe auch setDevice().
QString QTextDocumentWriter::fileName() const
Wenn das aktuell zugewiesene Gerät ein „ 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 Format zurück, das zum Schreiben von Dokumenten verwendet wird.
Siehe auch „ setFormat()“.
void QTextDocumentWriter::setDevice(QIODevice *device)
Setzt das Gerät des Schreibers auf das angegebene „ device “. Wenn bereits ein Gerät festgelegt wurde, wird das alte Gerät entfernt, ansonsten jedoch unverändert belassen.
Ist das Gerät noch nicht geöffnet, versucht ` QTextDocumentWriter `, das Gerät im Modus ` WriteOnly ` zu öffnen, indem die Funktion `open()` aufgerufen wird.
Hinweis: Dies funktioniert bei bestimmten Geräten nicht, wie z. B. „ QProcess “, „ QTcpSocket “ und „ QUdpSocket “, bei denen vor dem Öffnen des Geräts eine Konfiguration erforderlich ist.
Siehe auch device() und setFileName().
void QTextDocumentWriter::setFileName(const QString &fileName)
Legt den Namen der Datei fest, in die geschrieben werden soll: fileName. Intern erstellt QTextDocumentWriter eine Datei unter QFile, öffnet diese 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, das zum Schreiben von Dokumenten in die angegebene format verwendet wird. „ format “ ist eine Textzeichenfolge, bei der Groß- und Kleinschreibung keine Rolle spielt. Beispiel:
QTextDocumentWriter writer;
writer.setFormat("odf"); // same as writer.setFormat("ODF");Rufen Sie die Funktion ` supportedDocumentFormats()` auf, um eine vollständige Liste der von ` QTextDocumentWriter ` unterstützten Formate zu erhalten.
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 | Klartext |
| 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 Datei „ document “ auf das zugewiesene Gerät oder in die zugewiesene Datei und gibt bei Erfolg „ true “ zurück; andernfalls wird „ false “ zurückgegeben.
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 wird ` false` zurückgegeben.
© 2026 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.