chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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)建過程

嵌入式小生 ? 來源:嵌入式小生 ? 作者:iriczhao ? 2022-10-27 11:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

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

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

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

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

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

QtXlsxWriter可以通過QtCreator來編譯構(gòu)建,所以我們打開安裝在linux平臺(tái)上的QtCreator,然后使用QtCreator打開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的庫目錄:

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

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

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

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

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

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

然后可以編譯構(gòu)建一個(gè)demo示例來測(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目錄,依次展開,選擇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)建,沒有安裝能打開xlsx的應(yīng)用軟件,故將其拷貝到Windows下使用wps打開。打開后圖表如下圖所示:

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

以上過程是在Ubuntu18.04下進(jìn)行的,如果想讓QtXlsxWriter運(yùn)行于嵌入式linux平臺(tái)上,只需要在QtCreator中選擇編譯構(gòu)建套件時(shí),選擇對(duì)應(yīng)的交叉編譯套件編譯,在編譯完成后,將構(gòu)建出的庫文件復(fù)制到Linux的鏈接庫目錄下(一般為/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ī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • QTcreator
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

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

    關(guān)注

    0

    文章

    27

    瀏覽量

    8868
  • Linux開發(fā)
    +關(guān)注

    關(guān)注

    0

    文章

    40

    瀏覽量

    7536

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

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    嵌入式工程師為什么要學(xué)QT?

    、Clang、MSVC等,并提供了跨平臺(tái)的編譯和發(fā)布流程。 強(qiáng)大的集成開發(fā)環(huán)境(IDE) Qt Creator提供了代碼編輯、調(diào)試、構(gòu)建和發(fā)布功能,極大地提升了開發(fā)效率。 因此,Qt是嵌入式工程師值得學(xué)習(xí)的一個(gè)工具。 它能夠幫助工程師提高開發(fā)效率,編寫高質(zhì)量的代碼,并
    發(fā)表于 08-14 15:15

    【「Yocto項(xiàng)目實(shí)戰(zhàn)教程:高效定制嵌入式Linux系統(tǒng)」閱讀體驗(yàn)】+基礎(chǔ)概念學(xué)習(xí)理解

    軟件包的依賴關(guān)系、編譯選項(xiàng)、配置參數(shù)等。掌握元數(shù)據(jù)的使用方法對(duì)于定制和優(yōu)化嵌入式 Linux 系統(tǒng)至關(guān)重要。 BitBake BitBake 是 Yocto 項(xiàng)目的構(gòu)建工具。通過學(xué)習(xí)這部分內(nèi)容,我深入
    發(fā)表于 08-04 22:29

    通用型上位機(jī),支持串口、UDP、TCP,可以在表格中自由編輯公式和數(shù)據(jù),可以組態(tài)

    本帖最后由 jf_43406447 于 2025-7-18 16:49 編輯 本上位機(jī)軟件是用于與下位機(jī)(如嵌入式設(shè)備、機(jī)器人、傳感器等)進(jìn)行通信和數(shù)據(jù)交換的計(jì)算機(jī)程序。具備數(shù)據(jù)采集、分析
    發(fā)表于 07-17 14:58

    如何導(dǎo)出Excel文件 -- excel_hm介紹 ##三方SDK##

    ; this.message = \'\'; this.showFileActions = false; // 構(gòu)建表格數(shù)據(jù) const tableData: ExcelTableData = { title
    發(fā)表于 06-30 17:57

    嵌入式開發(fā)入門指南:從零開始學(xué)習(xí)嵌入式

    特定功能的計(jì)算機(jī)系統(tǒng),廣泛應(yīng)用于智能家居、工業(yè)控制、醫(yī)療設(shè)備、車載系統(tǒng)等領(lǐng)域。 2. 學(xué)習(xí)嵌入式開發(fā)的前置知識(shí)熟悉C語言編程掌握基本的數(shù)據(jù)結(jié)構(gòu)與算法了解數(shù)字電路與微控制器原理熟悉Linux操作系統(tǒng)
    發(fā)表于 05-15 09:29

    飛凌嵌入式2025嵌入式及邊緣AI技術(shù)論壇圓滿結(jié)束

    飛凌嵌入式「2025嵌入式及邊緣AI技術(shù)論壇」在深圳深鐵皇冠假日酒店盛大舉行,此次活動(dòng)邀請(qǐng)到了200余位嵌入式技術(shù)領(lǐng)域的技術(shù)專家、企業(yè)代表和工程師用戶,共享嵌入式及邊緣AI技術(shù)的盛宴!
    的頭像 發(fā)表于 04-28 13:57 ?3618次閱讀
    飛凌<b class='flag-5'>嵌入式</b>2025<b class='flag-5'>嵌入式</b>及邊緣AI技術(shù)論壇圓滿結(jié)束

    嵌入式適合自學(xué)嗎?

    構(gòu)、時(shí)鐘系統(tǒng)、電源管理、存儲(chǔ)映射等。 嵌入式必學(xué)技術(shù)點(diǎn)↓↓↓ 1硬件與軟件的結(jié)合 2實(shí)時(shí)性要求與資源限制 3跨領(lǐng)域知識(shí)整合 4調(diào)試與測(cè)試?yán)щy 二)缺乏專業(yè)指導(dǎo) 1)容易走彎路:自學(xué)嵌入式過程
    發(fā)表于 04-27 09:54

    飛凌嵌入式「2025嵌入式及邊緣AI技術(shù)論壇」議程公布

    4月22日,飛凌嵌入式“2025嵌入式及邊緣AI技術(shù)論壇”將在深圳舉行,論壇以“新生態(tài),智未來”為主題,旨在匯聚行業(yè)智慧,探討嵌入式技術(shù)與邊緣AI的深度融合與創(chuàng)新應(yīng)用。
    的頭像 發(fā)表于 04-02 15:12 ?893次閱讀
    飛凌<b class='flag-5'>嵌入式</b>「2025<b class='flag-5'>嵌入式</b>及邊緣AI技術(shù)論壇」議程公布

    嵌入式主板的概述與發(fā)展

    隨著科技的迅猛發(fā)展,嵌入式系統(tǒng)在現(xiàn)代電子產(chǎn)品中扮演著越來越重要的角色。嵌入式主板作為嵌入式系統(tǒng)的核心組件之一,承擔(dān)著控制、處理和通訊等多種功能。本文將對(duì)嵌入式主板的基本概念、構(gòu)成部分、
    的頭像 發(fā)表于 01-13 16:30 ?1000次閱讀
    <b class='flag-5'>嵌入式</b>主板的概述與發(fā)展

    ARM架構(gòu)嵌入式主板特點(diǎn)

    嵌入式主板可以理解為嵌入在設(shè)備中用于控制和數(shù)據(jù)處理的CPU板,也就是設(shè)備的“大腦”。當(dāng)主板嵌入到設(shè)備中,當(dāng)然對(duì)主板的體積和功耗會(huì)有更嚴(yán)格的要求(嵌入
    的頭像 發(fā)表于 12-31 16:03 ?1530次閱讀
    ARM架構(gòu)<b class='flag-5'>嵌入式</b>主板特點(diǎ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

    什么是嵌入式人工智能

    嵌入式人工智能是指將人工智能技術(shù)應(yīng)用于嵌入式系統(tǒng)中的一種技術(shù)。嵌入式系統(tǒng)是嵌入到其他設(shè)備或系統(tǒng)中的計(jì)算機(jī)系統(tǒng),通常用于控制、監(jiān)測(cè)或執(zhí)行特定任務(wù),如智能手機(jī)、智能家居設(shè)備、智能汽車等中的
    的頭像 發(fā)表于 12-11 09:23 ?1311次閱讀
    什么是<b class='flag-5'>嵌入式</b>人工智能

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

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

    嵌入式學(xué)習(xí)建議

    動(dòng)手做一個(gè)實(shí)際的小系統(tǒng),底層硬件基礎(chǔ)就有了。各個(gè)硬件模塊驅(qū)動(dòng)程序的編寫是嵌入式系統(tǒng)的必備基礎(chǔ)。學(xué)習(xí)嵌入式系統(tǒng)的初期,這個(gè)過程是必須的。 ④至于嵌入式實(shí)時(shí)操作系統(tǒng)RTOS,一定不要一開
    發(fā)表于 10-22 11:41

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

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