在日常写程序过程中,经常碰到到读取excel表格的场合,现有的qt库读写excel支持的并不友好。最近发现一个开源库(QtXlsx),使用起来比较方便。
使用此开源库:
- 下载此库源码。项目下载地址:https://github.com/dbzhang800/QtXlsxWriter。如果下载较慢则在此下载:https://download.csdn.net/download/qq_24428581/13746602
- 编译此库。
1)编译此库需要用到perl命令,请确保在cmd命令行内能找到 perl,如下图所示,若没有则在此下载:https://download.csdn.net/download/qq_24428581/13746743
2)进入QtXlsx的顶层目录,执行qamke (Qt相应的bin目录必须加入到系统path),然后执行mingw32-make.exe,最后执行 mingw32-make.exe install。执行完这3个命令之后,便完成安装了,为了方便开发,使用mingw32-make.exe html_docs生成帮助文档(此库的帮助文档看起来非常方便,双击doc\qtxlsx\index.html来查看相应文档)。
3.使用此库。
在Pro文件里加入 QT += xlsx便可以添加此模块,测试代码如下
QXlsx::Document xlsx;
xlsx.write("A1", "Hello Qt!");
xlsx.write("A2", 12345);
xlsx.write("A3", "=44+33");
xlsx.write("A4", true);
xlsx.write("A5", "http://qt-project.org");
xlsx.write("A6", QDate(2013, 12, 27));
xlsx.write("A7", QTime(6, 30));
xlsx.addSheet("Fonts");
xlsx.write("A1", "Fonts1");
xlsx.addSheet("Fonts1");
xlsx.write("A2", "Fonts2");
qDebug()<<xlsx.currentSheet()->sheetName();
xlsx.write("A3", "test");
xlsx.selectSheet("Sheet1");
qDebug()<<xlsx.currentSheet()->sheetName();
xlsx.write("A8", "others");
xlsx.write("A9", "中文");
xlsx.saveAs("../gao.xlsx");
相应代码连接:https://download.csdn.net/download/qq_24428581/13746900
如有问题联系 QQ:444676038