色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

記錄嵌入式Excel表格數(shù)據(jù)導(dǎo)出的構(gòu)建過(guò)程

嵌入式小生 ? 來(lái)源:嵌入式小生 ? 作者:iriczhao ? 2022-10-27 11:14 ? 次閱讀

最近有一個(gè)嵌入式Excel表格數(shù)據(jù)導(dǎo)出的需求:應(yīng)用軟件運(yùn)行于嵌入式Linux平臺(tái)上,在設(shè)備運(yùn)行過(guò)程中,存儲(chǔ)了許多數(shù)據(jù),這些數(shù)據(jù)想以表格的形式導(dǎo)出。

考慮到Windows平臺(tái)的普遍性,需要將數(shù)據(jù)以excel表格形式導(dǎo)出,故選擇了一個(gè)開(kāi)源庫(kù):QtXlsxWriter,本文主要記錄其編譯構(gòu)建過(guò)程。

從下列地址https://github.com/dbzhang800/QtXlsxWriter獲取安裝包,將源碼包解壓縮,目錄結(jié)構(gòu)如下圖所示:

8a47ddd8-4575-11ed-96c9-dac502259ad0.png

example目錄下存放的是示例Demo。

src目錄下存放的是xlsx的源碼。

tests目錄下存放的是測(cè)試工程。

QtXlsxWriter可以通過(guò)QtCreator來(lái)編譯構(gòu)建,所以我們打開(kāi)安裝在linux平臺(tái)上的QtCreator,然后使用QtCreator打開(kāi)QtXlsxWriter項(xiàng)目(選擇源碼目錄下的xxx.pro文件)。選擇對(duì)應(yīng)的編譯構(gòu)建套件后,如下圖所示:

8aaa8e6a-4575-11ed-96c9-dac502259ad0.png

點(diǎn)擊項(xiàng)目管理視圖中的頂級(jí)目錄,單擊右鍵,選擇“構(gòu)建”,即可構(gòu)建QtXlsxWriter:

8ad7df3c-4575-11ed-96c9-dac502259ad0.png

編譯成功后,將在源碼目錄的同級(jí)下創(chuàng)建構(gòu)建輸出目錄,該目錄結(jié)構(gòu)如下圖所示:

8afdbc2a-4575-11ed-96c9-dac502259ad0.png

bin :用于存放二進(jìn)制文件。(該目錄為空)

examples:示例Demo的編譯構(gòu)建輸出目錄。

include:該目錄存放關(guān)于QtXlsxWriter的頭文件:

8b33abfa-4575-11ed-96c9-dac502259ad0.png

lib:該目錄用于存放QtXlsxWriter的庫(kù)目錄:

8b5f9d78-4575-11ed-96c9-dac502259ad0.png

mkspecs:該目錄是Qt的模塊化標(biāo)識(shí)目錄,用于向Qt開(kāi)發(fā)環(huán)境添加X(jué)lsx:

8b866110-4575-11ed-96c9-dac502259ad0.png

tests:該目錄用于存放測(cè)試工程。

在上述目錄中,include、lib、mkspecs目錄是比較重要的目錄。在搭建QtXlsxWriter開(kāi)發(fā)環(huán)境時(shí)需要使用到。

將構(gòu)建完成后的目錄下的bin、include、lib、mkspecs、src目錄拷貝到Qt的安裝目錄下,以在QtCreator中可以使用Qt+=xlsx加載模塊

然后可以編譯構(gòu)建一個(gè)demo示例來(lái)測(cè)試一下。本文以chart為例,其代碼如下:

#include
#include"xlsxdocument.h"
#include"xlsxcellrange.h"
#include"xlsxchart.h"

usingnamespaceQXlsx;

intmain()
{
//![0]創(chuàng)建xlsx文檔對(duì)象。向單元格總寫入數(shù)據(jù)
Documentxlsx;
for(inti=1;isetChartType(Chart::CT_Pie);
pieChart->addSeries(CellRange("A1:A9"));
pieChart->addSeries(CellRange("B1:B9"));
pieChart->addSeries(CellRange("C1:C9"));

Chart*pie3DChart=xlsx.insertChart(3,9,QSize(300,300));
pie3DChart->setChartType(Chart::CT_Pie3D);
pie3DChart->addSeries(CellRange("A1:C9"));

Chart*barChart=xlsx.insertChart(23,3,QSize(300,300));
barChart->setChartType(Chart::CT_Bar);
barChart->addSeries(CellRange("A1:C9"));

Chart*bar3DChart=xlsx.insertChart(23,9,QSize(300,300));
bar3DChart->setChartType(Chart::CT_Bar3D);
bar3DChart->addSeries(CellRange("A1:C9"));

Chart*lineChart=xlsx.insertChart(43,3,QSize(300,300));
lineChart->setChartType(Chart::CT_Line);
lineChart->addSeries(CellRange("A1:C9"));

Chart*line3DChart=xlsx.insertChart(43,9,QSize(300,300));
line3DChart->setChartType(Chart::CT_Line3D);
line3DChart->addSeries(CellRange("A1:C9"));

Chart*areaChart=xlsx.insertChart(63,3,QSize(300,300));
areaChart->setChartType(Chart::CT_Area);
areaChart->addSeries(CellRange("A1:C9"));

Chart*area3DChart=xlsx.insertChart(63,9,QSize(300,300));
area3DChart->setChartType(Chart::CT_Area3D);
area3DChart->addSeries(CellRange("A1:C9"));

Chart*scatterChart=xlsx.insertChart(83,3,QSize(300,300));
scatterChart->setChartType(Chart::CT_Scatter);
//Willgeneratethreelines.
scatterChart->addSeries(CellRange("A1:A9"));
scatterChart->addSeries(CellRange("B1:B9"));
scatterChart->addSeries(CellRange("C1:C9"));

Chart*scatterChart_2=xlsx.insertChart(83,9,QSize(300,300));
scatterChart_2->setChartType(Chart::CT_Scatter);
//Willgeneratetwolines.
scatterChart_2->addSeries(CellRange("A1:C9"));

Chart*doughnutChart=xlsx.insertChart(103,3,QSize(300,300));
doughnutChart->setChartType(Chart::CT_Doughnut);
doughnutChart->addSeries(CellRange("A1:C9"));
//![1]

//![2]將xlsx文檔對(duì)象保存為Book1.xlsx文件。
xlsx.saveAs("Book1.xlsx");
//![2]

//保存為Book2.xlsx文件。
Documentxlsx2("Book1.xlsx");
xlsx2.saveAs("Book2.xlsx");
return0;
}

選中項(xiàng)目管理視圖中的example目錄,依次展開(kāi),選擇chart目錄,右鍵單擊,選中“構(gòu)建”選項(xiàng),即可對(duì)chart示例演示進(jìn)行構(gòu)建。

然后在chart的編譯構(gòu)建目錄下,將生成如下文件:

8ba2da34-4575-11ed-96c9-dac502259ad0.png

在終端運(yùn)行一下生成的程序(此處是chart):

8bc51ae0-4575-11ed-96c9-dac502259ad0.png

運(yùn)行完成后,將在同級(jí)目錄下創(chuàng)建兩個(gè)文件:如下圖所示:

8bf79204-4575-11ed-96c9-dac502259ad0.png

注:由于在ubuntu編譯構(gòu)建,沒(méi)有安裝能打開(kāi)xlsx的應(yīng)用軟件,故將其拷貝到Windows下使用wps打開(kāi)。打開(kāi)后圖表如下圖所示:

8c356296-4575-11ed-96c9-dac502259ad0.png

以上過(guò)程是在Ubuntu18.04下進(jìn)行的,如果想讓QtXlsxWriter運(yùn)行于嵌入式linux平臺(tái)上,只需要在QtCreator中選擇編譯構(gòu)建套件時(shí),選擇對(duì)應(yīng)的交叉編譯套件編譯,在編譯完成后,將構(gòu)建出的庫(kù)文件復(fù)制到Linux的鏈接庫(kù)目錄下(一般為/usr/lib),則可以在嵌入式Linux平臺(tái)上使用QtXlsxWriter了。






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • QTcreator
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    6908
  • BIN文件
    +關(guān)注

    關(guān)注

    0

    文章

    26

    瀏覽量

    8436
  • Linux開(kāi)發(fā)
    +關(guān)注

    關(guān)注

    0

    文章

    34

    瀏覽量

    7034

原文標(biāo)題:Excel表格數(shù)據(jù)導(dǎo)出,這個(gè)庫(kù)不錯(cuò)

文章出處:【微信號(hào):嵌入式小生,微信公眾號(hào):嵌入式小生】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    新手怎么學(xué)嵌入式?

    基本的概念。嵌入式系統(tǒng)是一種將計(jì)算機(jī)技術(shù)嵌入到特定設(shè)備中的系統(tǒng),它通常具有特定的功能和有限的資源。你需要學(xué)習(xí)一些計(jì)算機(jī)基礎(chǔ)知識(shí),如數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)、計(jì)算機(jī)組成原理等。這些知識(shí)將幫助你理解嵌入
    發(fā)表于 12-12 10:51

    傳統(tǒng)電子表格Excel和Teable多維表格數(shù)據(jù)庫(kù)的區(qū)別?

    傳統(tǒng)Excel是一款功能強(qiáng)大的電子表格軟件,它的數(shù)據(jù)處理 分析以及圖表制作等功能給工作帶來(lái)了很多便利,但也有自身的局限性,本文介紹的多維表格Teable
    的頭像 發(fā)表于 10-23 16:44 ?620次閱讀

    什么是嵌入式?一文讀懂嵌入式主板

    在現(xiàn)代科技浪潮中,嵌入式技術(shù)已成為支撐各種智能設(shè)備和系統(tǒng)運(yùn)行的核心力量。那么,究竟什么是嵌入式嵌入式系統(tǒng),顧名思義,是將計(jì)算機(jī)的硬件和軟件嵌入到某種設(shè)備或系統(tǒng)中,以實(shí)現(xiàn)特定功能的計(jì)算
    的頭像 發(fā)表于 10-16 10:14 ?1950次閱讀

    何為Teable多維表格數(shù)據(jù)庫(kù),它僅僅是一個(gè)在線的智能表格嗎?

    表格是一種創(chuàng)新的數(shù)據(jù)管理和協(xié)作工具,它結(jié)合了傳統(tǒng)電子表格的直觀界面與關(guān)系數(shù)據(jù)庫(kù)的強(qiáng)大功能。用戶不僅可以像在Excel中一樣在二維
    的頭像 發(fā)表于 10-14 16:13 ?708次閱讀

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被稱為嵌入式系統(tǒng)的核心組件,是一種用于控制和數(shù)據(jù)處理的計(jì)算機(jī)硬件,其設(shè)計(jì)旨在嵌入特定設(shè)備中執(zhí)行專門任務(wù)。嵌入式主板如同是設(shè)備
    的頭像 發(fā)表于 09-30 10:05 ?1167次閱讀

    嵌入式常用數(shù)據(jù)結(jié)構(gòu)有哪些

    嵌入式編程中,數(shù)據(jù)結(jié)構(gòu)的選擇和使用對(duì)于程序的性能、內(nèi)存管理以及開(kāi)發(fā)效率都具有重要影響。嵌入式系統(tǒng)由于資源受限(如處理器速度、內(nèi)存大小等),因此對(duì)數(shù)據(jù)結(jié)構(gòu)的選擇和使用尤為關(guān)鍵。以下是
    的頭像 發(fā)表于 09-02 15:25 ?722次閱讀

    嵌入式linux開(kāi)發(fā)的基本步驟有哪些?

    嵌入式Linux開(kāi)發(fā)是一個(gè)復(fù)雜的過(guò)程,涉及到硬件選擇、操作系統(tǒng)移植、驅(qū)動(dòng)開(kāi)發(fā)、應(yīng)用程序開(kāi)發(fā)等多個(gè)方面。以下是嵌入式Linux開(kāi)發(fā)的基本步驟,以及每個(gè)步驟的說(shuō)明。 硬件選擇 在開(kāi)始嵌入式
    的頭像 發(fā)表于 09-02 09:11 ?756次閱讀

    學(xué)習(xí)hypervisor嵌入式產(chǎn)品安全設(shè)計(jì)

    Hypervisor的設(shè)計(jì)與實(shí)現(xiàn),涵蓋嵌入式Hypervisor架構(gòu)與核心組件、中斷隔離技術(shù)、內(nèi)存隔離技術(shù)、循環(huán)表調(diào)度器、健康監(jiān)控、分區(qū)間通信技術(shù)、內(nèi)核資源管理模型、系統(tǒng)初始化過(guò)程、內(nèi)核服務(wù)
    發(fā)表于 08-25 09:11

    嵌入式QT常見(jiàn)開(kāi)發(fā)方式有哪些?

    提供的豐富組件如按鈕、文本框、窗口等構(gòu)建傳統(tǒng)的桌面應(yīng)用風(fēng)格界面。對(duì)于嵌入式設(shè)備上的復(fù)雜用戶界面或者需要高性能響應(yīng)的應(yīng)用,Qt Widgets是一個(gè)較為常用的選擇。 2.Qt Designer配合C++
    發(fā)表于 08-12 10:05

    嵌入式開(kāi)發(fā)前景怎么樣?

    嵌入式開(kāi)發(fā)前景非常廣闊,這主要得益于物聯(lián)網(wǎng)、人工智能、大數(shù)據(jù)等技術(shù)的快速發(fā)展,以及嵌入式系統(tǒng)在各個(gè)領(lǐng)域的廣泛應(yīng)用。以下是對(duì)嵌入式開(kāi)發(fā)前景的詳細(xì)分析
    的頭像 發(fā)表于 07-10 09:00 ?3428次閱讀
    <b class='flag-5'>嵌入式</b>開(kāi)發(fā)前景怎么樣?

    如何提升嵌入式編程能力?

    、SPI、CAN、WIFI、MQTT等多種通信協(xié)議。 4. 使用開(kāi)發(fā)工具:熟練掌握嵌入式開(kāi)發(fā)工具,如編譯器、調(diào)試器、仿真器和實(shí)時(shí)操作系統(tǒng)(RTOS)。 5. 閱讀數(shù)據(jù)手冊(cè):仔細(xì)閱讀你所使用的微控制器或
    發(fā)表于 06-21 10:01

    基于AMD、ARM、Intel和NVIDIA技術(shù)構(gòu)建嵌入式工控機(jī)

    嵌入式工控機(jī)提供完全的可靠性、多樣化的外形尺寸、可擴(kuò)展的I/O和各種安裝選項(xiàng),采用工業(yè)級(jí)組件構(gòu)建,并按照精確的要求進(jìn)行成像,保證您獲得可靠且可重復(fù)的嵌入式系統(tǒng)。
    的頭像 發(fā)表于 05-22 17:13 ?642次閱讀
    基于AMD、ARM、Intel和NVIDIA技術(shù)<b class='flag-5'>構(gòu)建</b>的<b class='flag-5'>嵌入式</b>工控機(jī)

    嵌入式熱門發(fā)展方向有哪些?

    熱門發(fā)展方向,包括但不限于: 1.物聯(lián)網(wǎng): 隨著物聯(lián)網(wǎng)的快速發(fā)展,嵌入式系統(tǒng)在物聯(lián)網(wǎng)領(lǐng)域的應(yīng)用也越來(lái)越廣泛。嵌入式系統(tǒng)可以用于物聯(lián)網(wǎng)設(shè)備的控制、監(jiān)測(cè)和數(shù)據(jù)處理等方面。例如,在服務(wù)領(lǐng)域,如遠(yuǎn)程點(diǎn)菜器等
    發(fā)表于 04-11 14:17

    嵌入式fpga是什么意思

    嵌入式FPGA是指將FPGA技術(shù)集成到嵌入式系統(tǒng)中的一種解決方案。嵌入式系統(tǒng)是一種為特定應(yīng)用而設(shè)計(jì)的計(jì)算機(jī)系統(tǒng),它通常包括處理器、內(nèi)存、外設(shè)接口等組件,并且被嵌入到更大的設(shè)備或系統(tǒng)中,
    的頭像 發(fā)表于 03-15 14:29 ?1531次閱讀

    fpga是嵌入式

    FPGA(現(xiàn)場(chǎng)可編程門陣列)不是嵌入式系統(tǒng),但FPGA在嵌入式系統(tǒng)中有著重要的應(yīng)用。
    的頭像 發(fā)表于 03-14 17:19 ?2731次閱讀
    主站蜘蛛池模板: 久久国产乱子伦精品免费M 久久国产露脸老熟女熟69 | 国产精品无码久久久久不卡 | 欧美色图天堂网 | 天堂视频在线观看免费完整版 | 久久操热在线视频精品 | 一本色道久久综合亚洲精品 | 无码专区久久综合久综合字幕 | 香蕉精品国产高清自在自线 | 麻豆成人久久精品二区三区网站 | 久久久久久久久久综合情日本 | 亚洲日本天堂在线 | 性夜夜春夜夜爽AA片A | 日本无修肉动漫在线观看 | 翁公吮她的花蒂和奶水 | 午夜一区欧美二区高清三区 | 色男人的天堂久久综合 | 亚洲AV久久无码高潮喷水 | 国语对白嫖老妇胖老太 | 最近韩国日本免费观看mv免费版 | 神马电影院午夜神福利在线观看 | 漂亮的保姆5电影免费观看完整版中文 | 日本又黄又裸一级大黄裸片 | 成人免费小视频 | 国产精品一区二区免费 | 国产学生在线播放精品视频 | 偷偷鲁青春草原视频分类 | 在线看片成人免费视频 | 国产不卡无码高清视频 | younv 学生国产在线视频 | 日韩亚洲人成在线 | 日韩精品熟女一区二区三区中文 | 亚洲视频欧美视频 | 亚洲精品国产专区91在线 | 亚洲视频欧美在线专区 | 蜜柚影院在线观看免费高清中文 | 翘臀后进美女白嫩屁股视频 | 国产成人免费a在线资源 | 亚洲AV美女成人网站P站 | 国产精品亚洲在钱视频 | 成人公开免费视频 | 老女老肥熟国产在线视频 |