当前位置: 首页 > news >正文

怎样建立企业网站百度代理查询

怎样建立企业网站,百度代理查询,住房和城乡建设部网站无在建,宜春市城乡规划建设局网站Qt Excel读写 - QXlsx的安装配置以及测试 引言一、安装配置二、简单测试 引言 Qt无自带的库处理Excel 文件,但可通过QAxObject 借助COM接口进行Excel的读写1。亦可使用免费的开源第三方库:QXlsx,一个基于Qt库开发的用于读写Microsoft Excel文…

Qt Excel读写 - QXlsx的安装配置以及测试

  • 引言
  • 一、安装配置
  • 二、简单测试

引言

Qt无自带的库处理Excel 文件,但可通过QAxObject 借助COM接口进行Excel的读写1。亦可使用免费的开源第三方库:QXlsx,一个基于Qt库开发的用于读写Microsoft Excel文件的C++库。它提供了一组简单易用的API,可以方便地创建、修改和操作Excel文件。

可参考:
https://github.com/QtExcel/QXlsx 官方源码
https://gitcode.com/qtexcel/qxlsx/overview?utm_source=csdn_github_accelerator&isLogin=1 官方源码 - gitCode(GitHub加速计划 - 推荐)
https://blog.csdn.net/qq_36393978/article/details/132542318 使用 QAxObject 高效任意读写 Excel 表1
https://blog.csdn.net/techenliu/article/details/133089775 QT之excel的读写2

一、安装配置

    1. 下载源码,如下图所示,QXlsx就是核心代码,里面还包含了很多示例。
      在这里插入图片描述
    1. 创建一个工程,控制台或者带界面的都可以,将QXlsx复制到工程目录下。
      在这里插入图片描述
    1. .pro文件中添加以下语句,将QXlsx添加到工程中,保存pro文件 (自动会执行qmake 或自己手动执行) :
# QXlsx code for Application Qt project
QXLSX_PARENTPATH=./QXlsx/         # current QXlsx path is . (. means curret directory)
QXLSX_HEADERPATH=./QXlsx/header/  # current QXlsx header path is ./header/
QXLSX_SOURCEPATH=./QXlsx/source/  # current QXlsx source path is ./source/
include(./QXlsx/QXlsx.pri)

在这里插入图片描述

二、简单测试

    1. 创建一个.xlsx文件,对单元格赋值,保存到磁盘上。
      在这里插入图片描述
#include "mainwindow.h"
#include <QApplication>// QXlsx
#include "xlsxdocument.h"
#include "xlsxchartsheet.h"
#include "xlsxcellrange.h"
#include "xlsxchart.h"
#include "xlsxrichstring.h"
#include "xlsxworkbook.h"int main(int argc, char *argv[])
{
//    QApplication a(argc, argv);
//    MainWindow w;
//    w.show();//    return a.exec();// 测试QXlsxQXlsx::Document xlsx;xlsx.write("A1", "A1");   // (A,1)  第一行第一列xlsx.write(1, 2, "A2");   // (A,2)  第一行第二列xlsx.saveAs("Test.xlsx"); // 保存return 0;
}
    1. 读取一个.xlsx文件,输出到控制台。(使用官方的ShowConsole代码)
      修改官方代码.pro文件,配置添加QXlsx。修改xlsxFileName为刚才生成的Test.xlsx,运行即可。
      在这里插入图片描述
// main.cpp#include <iostream>
#include <vector>#include <QCoreApplication>
#include <QDebug>
#include <QDir>
#include <QVariant>
#include <QtCore>
#include <QtGlobal>
using namespace std;// [0] include QXlsx headers
#include "xlsxcellrange.h"
#include "xlsxchart.h"
#include "xlsxchartsheet.h"
#include "xlsxdocument.h"
#include "xlsxrichstring.h"
#include "xlsxworkbook.h"
using namespace QXlsx;#include "fort.hpp" // libfortint main(int argc, char *argv[])
{QCoreApplication app(argc, argv);// get xlsx file nameQString xlsxFileName = "Test.xlsx";qDebug() << xlsxFileName;// tried to load xlsx using temporary documentQXlsx::Document xlsxTmp(xlsxFileName);if (!xlsxTmp.isLoadPackage()) {qCritical() << "Failed to load" << xlsxFileName;return (-1); // failed to load}// load new xlsx using new documentQXlsx::Document xlsxDoc(xlsxFileName);xlsxDoc.isLoadPackage();int sheetIndexNumber = 0;foreach (QString curretnSheetName, xlsxDoc.sheetNames()) {QXlsx::AbstractSheet *currentSheet = xlsxDoc.sheet(curretnSheetName);if (NULL == currentSheet)continue;// get full cells of sheetint maxRow = -1;int maxCol = -1;currentSheet->workbook()->setActiveSheet(sheetIndexNumber);Worksheet *wsheet = (Worksheet *) currentSheet->workbook()->activeSheet();if (NULL == wsheet)continue;QString strSheetName = wsheet->sheetName(); // sheet name// display sheet namestd::cout << std::string(strSheetName.toLocal8Bit()) << std::endl;QVector<CellLocation> clList = wsheet->getFullCells(&maxRow, &maxCol);QVector<QVector<QString>> cellValues;for (int rc = 0; rc < maxRow; rc++) {QVector<QString> tempValue;for (int cc = 0; cc < maxCol; cc++) {tempValue.push_back(QString(""));}cellValues.push_back(tempValue);}for (int ic = 0; ic < clList.size(); ++ic) {// cell locationCellLocation cl = clList.at(ic);int row = cl.row - 1;int col = cl.col - 1;// https://github.com/QtExcel/QXlsx/commit/9ab612ff5c9defc35333799c55b01be31aa66fc2// {{// QSharedPointer<Cell> ptrCell = cl.cell; // cell pointerstd::shared_ptr<Cell> ptrCell = cl.cell; // cell pointer// value of cell// QVariant var = cl.cell.data()->value();QVariant var = ptrCell->value();// }}QString str = var.toString();cellValues[row][col] = str;}fort::table fortTable;for (int rc = 0; rc < maxRow; rc++) {for (int cc = 0; cc < maxCol; cc++) {QString strTemp = cellValues[rc][cc];fortTable << std::string(strTemp.toLocal8Bit()); // display value}fortTable << fort::endr; // change to new row}std::cout << fortTable.to_string() << std::endl; // display forttable rowsheetIndexNumber++;}return 0;
}

  1. https://blog.csdn.net/qq_36393978/article/details/132542318 使用 QAxObject 高效任意读写 Excel 表 ↩︎ ↩︎

  2. https://blog.csdn.net/techenliu/article/details/133089775 QT之excel的读写 ↩︎

http://www.hkea.cn/news/518267/

相关文章:

  • 3322动态域名官网郑州seo联系搜点网络效果好
  • 网络营销渠道的类型河北seo基础教程
  • 做微信网站多少钱seo内部优化包括哪些内容
  • 中国城乡建设网站网络优化公司排名
  • 个人网站做淘宝客教程torrentkitty磁力搜索引擎
  • 广州北京网站建设seo培训讲师招聘
  • 手机上免费自己做网站网络营销案例分享
  • 长沙大型网站建设谷歌账号
  • 大兴德艺网站建设发布悬赏任务的推广平台
  • html5制作网站模板百度产品大全首页
  • 贵阳网站建设贵阳百度推广怎么推广
  • 瓮安建设局网站google play三件套
  • 大型门户网站模板营销神器
  • 学设计的网站都有哪些seo和sem
  • 如何做网站流量买卖营销型网站的特点
  • 装修设计网站哪个平台最好软文推广多少钱一篇
  • 怎么做微信里的网页网站链接网站设计平台
  • 长宁专业做网站网络营销案例分享
  • 哈尔滨专业建网站哪家好码迷seo
  • 涞水县住房和城乡建设局网站厦门seo专业培训学校
  • 网站建设销售招聘德阳seo
  • 平台网站建设的公司seozou是什么意思
  • wordpress 相册 主题seo整站优化技术培训
  • 做窗帘网站图片百度自动点击器下载
  • 飘雪影视大全免费观看视频快推达seo
  • 做网站的装饰标语seo宣传网站
  • 国外 平面设计 网站百度收录
  • 做网站话术简述搜索引擎的工作原理
  • 现在建设网站赚钱吗seo外链论坛
  • 青海网站建设企业海南百度竞价推广