Класс QTextDocumentWriter
Класс QTextDocumentWriter предоставляет формат-независимый интерфейс для записи QTextDocument в файлы или другие устройства. Подробнее...
| Заголовок: | #include <QTextDocumentWriter> |
| qmake: | QT += gui |
| С момента: | Qt 4.5 |
Этот класс был представлен в Qt 4.5.
Открытые функции
| QTextDocumentWriter(const QString &fileName, const QByteArray &format = QByteArray()) | |
| QTextDocumentWriter(QIODevice *device, const QByteArray &format) | |
| QTextDocumentWriter() | |
| ~QTextDocumentWriter() | |
| QTextCodec * | codec() const |
| QIODevice * | device() const |
| QString | fileName() const |
| QByteArray | format() const |
| void | setCodec(QTextCodec *codec) |
| 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.
QTextCodec *QTextDocumentWriter::codec() const
Возвращает кодек, который в настоящее время назначен для писателя.
См. также setCodec().
QIODevice *QTextDocumentWriter::device() const
Возвращает текущее назначенное устройство или nullptr если устройство не было назначено.
См. также setDevice().
QString QTextDocumentWriter::fileName() const
Если текущее назначенное устройство — QFile, или если был вызван setFileName(), эта функция возвращает имя файла, в который будет производиться запись. Во всех остальных случаях возвращает пустую строку.
См. также setFileName() и setDevice().
QByteArray QTextDocumentWriter::format() const
Возвращает формат, используемый для записи документов.
См. также setFormat().
void QTextDocumentWriter::setCodec(QTextCodec *codec)
Устанавливает кодек для этого потока в codec. Кодек используется для кодирования любых данных, которые записываются. По умолчанию QTextDocumentWriter использует UTF-8.
См. также codec().
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 | Гипертекстовый язык разметки |
| 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-5.13/qtextdocumentwriter.html