QTextDocumentWriter Class
La clase QTextDocumentWriter proporciona una interfaz independiente del formato para escribir un QTextDocument a archivos u otros dispositivos. Más...
| Cabecera: | #include <QTextDocumentWriter> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
- Lista de todos los miembros, incluidos los heredados
- QTextDocumentWriter es parte de las APIs de Procesamiento de Texto Enriquecido.
Funciones Públicas
| 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) |
Miembros públicos estáticos
| QList<QByteArray> | supportedDocumentFormats() |
Descripción detallada
Para escribir un documento, construye un objeto QTextDocumentWriter con un nombre de archivo o un objeto dispositivo, y especifica el formato del documento a escribir. Puedes construir un escritor y establecer el formato usando setFormat() más tarde.
Llame a write() para escribir el documento en el dispositivo. Si el documento se escribe correctamente, esta función devuelve true. Sin embargo, si se produce un error al escribir el documento, devolverá false.
Llame a supportedDocumentFormats() para obtener una lista de los formatos que QTextDocumentWriter puede escribir.
Dado que las capacidades de los formatos de salida soportados varían considerablemente, el escritor simplemente emite el subconjunto apropiado de objetos para cada formato. Esto normalmente incluye el texto formateado y las imágenes contenidas en un documento.
Documentación de las funciones miembro
QTextDocumentWriter::QTextDocumentWriter()
Construye un objeto QTextDocumentWriter vacío. Antes de escribir, debe llamar a setFormat() para establecer un formato de documento y, a continuación, a setDevice() o setFileName().
QTextDocumentWriter::QTextDocumentWriter(QIODevice *device, const QByteArray &format)
Construye un objeto QTextDocumentWriter para escribir en el device dado en el formato de documento especificado por format.
[explicit] QTextDocumentWriter::QTextDocumentWriter(const QString &fileName, const QByteArray &format = QByteArray())
Construye un objeto QTextDocumentWriter que escribirá en un fichero con el nombre fileName, utilizando el formato de documento especificado por format. Si no se proporciona format, QTextDocumentWriter detectará el formato del documento inspeccionando la extensión de fileName.
[noexcept] QTextDocumentWriter::~QTextDocumentWriter()
Destruye el objeto QTextDocumentWriter.
QIODevice *QTextDocumentWriter::device() const
Devuelve el dispositivo asignado actualmente, o nullptr si no se ha asignado ningún dispositivo.
Véase también setDevice().
QString QTextDocumentWriter::fileName() const
Si el dispositivo actualmente asignado es un QFile, o si se ha llamado a setFileName(), esta función devuelve el nombre del archivo en el que se va a escribir. En los demás casos, devuelve una cadena vacía.
Véase también setFileName() y setDevice().
QByteArray QTextDocumentWriter::format() const
Devuelve el formato utilizado para escribir documentos.
Véase también setFormat().
void QTextDocumentWriter::setDevice(QIODevice *device)
Establece el dispositivo del escritor en la dirección device especificada. Si ya se ha establecido un dispositivo, se elimina el antiguo, pero por lo demás se deja sin cambios.
Si el dispositivo aún no está abierto, QTextDocumentWriter intentará abrir el dispositivo en modo WriteOnly llamando a open().
Nota: Esto no funcionará para ciertos dispositivos, como QProcess, QTcpSocket y QUdpSocket, en los que se requiere alguna configuración antes de poder abrir el dispositivo.
Véase también device() y setFileName().
void QTextDocumentWriter::setFileName(const QString &fileName)
Establece el nombre del archivo que se escribirá en fileName. Internamente, QTextDocumentWriter creará un QFile y lo abrirá en modo WriteOnly, y utilizará este archivo al escribir el documento.
Véase también fileName() y setDevice().
void QTextDocumentWriter::setFormat(const QByteArray &format)
Establece el formato utilizado para escribir documentos en la dirección format especificada. format es una cadena de texto que no distingue mayúsculas de minúsculas. Por ejemplo:
QTextDocumentWriter writer; writer.setFormat("odf"); // same as writer.setFormat("ODF");
Puede llamar a supportedDocumentFormats() para obtener la lista completa de formatos que admite QTextDocumentWriter.
Véase también format().
[static] QList<QByteArray> QTextDocumentWriter::supportedDocumentFormats()
Devuelve la lista de formatos de documento soportados por QTextDocumentWriter.
Por defecto, Qt puede escribir los siguientes formatos:
| Formato | Descripción |
|---|---|
| texto sin formato | Texto plano |
| HTML | Lenguaje de marcado de hipertexto |
| markdown | Markdown (dialectos de CommonMark o GitHub) |
| ODF | Formato de documento abierto |
Véase también setFormat().
bool QTextDocumentWriter::write(const QTextDocument *document)
Escribe el document dado en el dispositivo o archivo asignado y devuelve true si tiene éxito; en caso contrario devuelve false.
bool QTextDocumentWriter::write(const QTextDocumentFragment &fragment)
Escribe el fragmento de documento especificado por fragment en el dispositivo o archivo asignado y devuelve true si tiene éxito; en caso contrario devuelve false.
© 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.