1、 下载QtXlsxWriter
下载地址:https://github.com/dbzhang800/QtXlsxWriter
帮助文档连接http://qtxlsx.debao.me/
2、下载perl编译器
下载地址:https://www.activestate.com/activeperl/downloads
安装后,在环境配置的path中添加per安装路径下的bin文件
3、编译下载的QtXlsxWriter文件,
打开QtXlsxWriter-master\qtxlsx.pro,记住不需要构建example 和test,注释掉他们,否则可能会出现编译出错的问题
在构建的时候,可能会有如下的错误,
xlsxzipreader.cpp: In member function ‘void QXlsx::ZipReader::init()’:
xlsxzipreader.cpp:51:66: error: conversion from ‘QVector<QZipReader::FileInfo>’ to non-scalar type ‘QList<QZipReader::FileInfo>’ requested
QList<QZipReader::FileInfo> allFiles = m_reader->fileInfoList();
这里只需要吧出错的文件添加 :
#include <QVector>
然后把出错的地方的"QList" 用"QVector" 替换掉重新构建就可以了。
构建 Debug 和Release
生成上图的内容
接下来就需要将这些文件拷贝到指定的位置,以便Qt可以正常的调用,
1、首先拷贝include目录下的QtXlsx目录到Qt的安装目录下,比如我的拷贝到:
D:\ProgramFile\Qt\5.8\mingw53_32\include 并修改QtXlsx下hearders.pri中的路径,用记事本的方式打开,修改即可,如下图:
2、接下来拷贝ib文件夹下 Qt5Xlsxd.lib Qt5Xlsx.lib Qt5Xlsx.prl Qt5Xlsxd.prl 4个文件到你的Qt的lib下:
D:\ProgramFile\Qt\5.8\mingw53_32\lib
3、拷贝lib文件夹下的 Qt5Xlsx.dll Qt5Xlsxd.dll 库文件到你的Qt库路径下
D:\ProgramFile\Qt\5.8\mingw53_32\bin
4、拷贝 mkspecs\modules 文件夹下的qt_lib_xlsx.pri到你的Qt模块下
D:\ProgramFile\Qt\5.8\mingw53_32\mkspecs\modules,此时.pri中的路径还是你生成release下的路径,我的做法是将release下的内容放在qt的安装路径下,然后修改路径即可。
添加完后,便可以使用了。
在新建的项目中的.pro文件中添加 QT+=xlsx
在头文件中包含 #include <QtXlsx>即可
下面给出一个小例子:
QXlsx::Documentxlsx;
xlsx.write("A1" , "Hello Qt");
xlsx.saveAs("Test.xlsx");
//写
QXlsx::Document xlsx;
if(!xlsx.selectSheet("station"))
{
xlsx.addSheet("station");
}
xlsx.write(1, 1, "x");
xlsx.write(1,2, "y");
xlsx.write(1, 3, "v");
xlsx.write(2, 1, 100);
xlsx.write(2,2, 100);
xlsx.write(2, 3, 20);
xlsx.saveAs("./agv.xlsx");
//读取
QXlsx::Document xlsxx("./agv.xlsx");
xlsx.selectSheet("station");
QXlsx::CellRange range;
range = xlsxx.dimension();
int rowCount = xlsxx.dimension().rowCount();//获取行数
for(int i = 1; i < rowCount + 1; i ++)
{
qDebug()<<QString::number(i)<<xlsxx.cellAt(i,1)->value().toString()<<xlsxx.cellAt(i,2)->value().toString()
<<xlsxx.cellAt(i,3)->value().toString();
}
/*************************************************************************************/
附件中有我编辑过的程序,可以下载直接运行后,再配置至Qt安装目录即可,若不想更改路径,则不要将编译过的文件删除即可。