Класс QTextDocumentWriter
Класс QTextDocumentWriter предоставляет независимый от формата интерфейс для записи QTextDocument в файлы или другие устройства. Подробнее...
| Заголовок: | #include <QTextDocumentWriter> |
| CMake: | find_package(Qt6 COMPONENTS Gui REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
Открытые функции
| QTextDocumentWriter(const QString &fileName, const QByteArray &format = QByteArray()) | |
| QTextDocumentWriter(QIODevice *device, const QByteArray &format) | |
| QTextDocumentWriter() | |
| ~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) |
Статические открытые члены
| QList<QByteArray> | supportedDocumentFormats() |
Подробное описание
Для записи документа создайте объект QTextDocumentWriter с именем файла или объектом устройства и укажите формат документа для записи. Вы можете создать писатель и установить формат, используя setFormat() позже.
Вызовите write() для записи документа в устройство. Если документ успешно записан, эта функция возвращает true. Однако, если при записи документа произошла ошибка, она вернёт false.
Вызовите supportedDocumentFormats() для получения списка форматов, которые может записывать QTextDocumentWriter.
Поскольку возможности поддерживаемых форматов вывода значительно различаются, писатель просто выводит соответствующий подмножество объектов для каждого формата. Обычно это включает отформатированный текст и изображения, содержащиеся в документе.
Документация по функциям-членам
QTextDocumentWriter::QTextDocumentWriter(const QString &fileName, const QByteArray &format = QByteArray())
Создаёт объект QTextDocumentWriter, который будет записывать в файл с именем fileName, используя формат документа, указанный format. Если format не указан, QTextDocumentWriter определит формат документа, анализируя расширение fileName.
QTextDocumentWriter::QTextDocumentWriter(QIODevice *device, const QByteArray &format)
Создаёт объект QTextDocumentWriter для записи в указанное device в формате документа, указанном format.
QTextDocumentWriter::QTextDocumentWriter()
Создаёт пустой объект QTextDocumentWriter. Перед записью необходимо вызвать setFormat() для установки формата документа, а затем setDevice() или setFileName().
QTextDocumentWriter::~QTextDocumentWriter()
Уничтожает объект QTextDocumentWriter.
QIODevice *QTextDocumentWriter::device() const
Возвращает текущее назначенное устройство или nullptr если устройство не назначено.
См. также setDevice().
QString QTextDocumentWriter::fileName() const
Если текущее назначенное устройство является QFile, или если был вызван setFileName(), эта функция возвращает имя файла, в который будет производиться запись. Во всех остальных случаях возвращает пустую строку.
См. также setFileName() и setDevice().
QByteArray QTextDocumentWriter::format() const
Возвращает формат, используемый для записи документов.
См. также setFormat().
void QTextDocumentWriter::setDevice(QIODevice *device)
Устанавливает устройство писателя на указанное device. Если устройство уже было установлено, старое устройство удаляется, но в остальном остаётся неизменным.
Если устройство ещё не открыто, QTextDocumentWriter попытается открыть устройство в режиме WriteOnly, вызвав open().
Примечание: Это не сработает для некоторых устройств, таких как QProcess, QTcpSocket и QUdpSocket, где требуется предварительная конфигурация перед открытием устройства.
См. также device() и setFileName().
void QTextDocumentWriter::setFileName(const QString &fileName)
Устанавливает имя файла для записи в fileName. Внутренне, QTextDocumentWriter создаст QFile и откроет его в режиме WriteOnly, и использует этот файл при записи документа.
См. также fileName() и setDevice().
void QTextDocumentWriter::setFormat(const QByteArray &format)
Устанавливает формат для записи документов на указанный format. format – это строка текста, не чувствительная к регистру. Например:
QTextDocumentWriter writer;
writer.setFormat("odf"); // same as writer.setFormat("ODF"); Вы можете вызвать supportedDocumentFormats() для получения полного списка форматов, которые поддерживает QTextDocumentWriter.
См. также format().
[static] QList<QByteArray> QTextDocumentWriter::supportedDocumentFormats()
Возвращает список форматов документов, поддерживаемых QTextDocumentWriter.
По умолчанию Qt может записывать следующие форматы:
| Формат | Описание |
|---|---|
| plaintext | Обычный текст |
| HTML | Язык разметки гипертекста |
| markdown | Markdown (диалекты CommonMark или GitHub) |
| ODF | Формат OpenDocument |
См. также setFormat().
bool QTextDocumentWriter::write(const QTextDocument *document)
Записывает указанный document в назначенное устройство или файл и возвращает true при успехе; в противном случае возвращает false.
bool QTextDocumentWriter::write(const QTextDocumentFragment &fragment)
Записывает фрагмент документа, заданный fragment, в назначенное устройство или файл и возвращает true при успехе; в противном случае возвращает false.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qtextdocumentwriter.html