QT 生成word 文档的简单说明

哎哎7年前C++4921

很简单,只需要向QTextStream中输入即可。

直接上源码


头文件

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
    Q_OBJECT
public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();
private slots:
    void on_pushButton_clicked();
private:
    Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H



mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "qfiledialog.h"
#include <QDateTime>
#include <QTextStream>
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}
MainWindow::~MainWindow()
{
    delete ui;
}
void MainWindow::on_pushButton_clicked()
{
    QString filename = QFileDialog::getSaveFileName(0,"","","*.doc",0,0);
    QString html;
    html += "<html xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:w=\"urn:schemas-microsoft-com:office:word\" xmlns=\"http://www.w3.org/TR/REC-html40\"><head><meta http-equiv=Content-Type  content=\"text/html; charset=gb2312\" >"; //这句可加可不加。主要是因为我在word里把doc另存为html文件后,看到有这么个头标签,由此想到直接将html文档保存为doc文件。
    html = ui->textEdit->toHtml();
    QFile outFile(filename);
    outFile.open(QIODevice::WriteOnly | QIODevice::Append );
    QTextStream ts(&outFile);
    ts<<html<<endl;
    outFile.close();
}


标签: qtword

相关文章

【QT】qt中不同类(class)的信号发送(emit)说明

  QTableView的当前行改变时的信号Qt: QTableView的当前行改变时的信号  void ShowLogDialog::showLogs(const QList<Log>...

memcpy函数实现

memcpy函数实现

    memcpy函数在面试中很容易被问到如何去实现。memcpy函数是内存拷贝函数,用于将一段内存空间数据拷贝到另一段内存空间中,但是它和memmove函数不同的是,它对内存空...

QString与QStringList的转换,提取字符串,合并字符串

QString提取字符,变为多个字符串的常用方法,split还有其参数,具体查看assistantQString str = "a,,b,c";QSt...

【QT】QT QString 很全的使用

  QString, QByteArray, 和 QVariant这三个类和容器有许多相同之处,并且在一些情况下可以被当作特殊的容器。 同样,像容器,这些类使用隐式共享来优化内存和速度。  我们将从Q...

按位与、或、异或等运算方法

  按位与运算符(&)  参加运算的两个数据,按二进制位进行“与”运算。  运算规则:0&0=0; 0&1=0; 1&0=0; 1&1=1;  即:两位同时为“...

qt编程时,遇到undefined reference to `vtable for xxx'怎么办

今天编译某个arm程序时,添加了个Q_OBJECT 的宏然后编译报错arm-none-linux-gnueabi-g++ -c -pipe -O2 -Wall&...