Класс 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 попытается открыть устройство в режиме QIODevice::WriteOnly, вызвав open().
Примечание: Это не будет работать для определенных устройств, таких как QProcess, QTcpSocket и QUdpSocket, где требуется предварительная настройка перед открытием устройства.
См. также device() и setFileName().
void QTextDocumentWriter::setFileName(const QString &fileName)
Устанавливает имя файла для записи в fileName. Внутренне, QTextDocumentWriter создаст QFile и откроет его в режиме QIODevice::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 | HyperText Markup Language |
| 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.0/qtextdocumentwriter.html