libmatio開發筆記(一):matlab檔案操作libmatio庫介紹,編譯和基礎Demo
前言
libmatio庫介紹
下載
Window上編譯(從原始碼使用VS工程直接編譯)
步驟一:下載解壓
步驟二:開啟原始碼工程
步驟三:編譯libmatio,出現無法開啟”zlib.h”解決
步驟四:編譯libmatio,出現無法開啟”hdf5.h”,解決
步驟五:編譯libmatio,呼叫引數太少
步驟五:更換hdf5版本
Window上編譯(CMake方式編譯)
步驟一:下載解壓
步驟二:CMake配置
步驟三:生成工程
步驟四:開啟工程
步驟五:工程生成
步驟六:安裝
模組化
Demo
bool MatlabManager::openMatFile(QString filePath){ mat_t *pMatFile = 0; matvar_t *pMatVar = 0; // 開啟mat檔案 pMatFile = Mat_Open(filePath.toUtf8().data(), MAT_ACC_RDONLY); if(!pMatFile) { LOG << "Failed to Mat_Open(filePath.toUtf8().data(), MAT_ACC_RDONLY)"; return false; } // 遍歷所有變數 pMatVar = Mat_VarReadNext(pMatFile); while(pMatVar) { LOG << "read variable =============================" << "pMatVar->name:" << pMatVar->name << endl << "pMatVar->rank:" << pMatVar->rank << endl << "pMatVar->dims:" << pMatVar->dims << endl << "pMatVar->class_type:" << pMatVar->class_type << endl << "pMatVar->data_type:" << pMatVar->data_type << endl << "pMatVar->isComplex:" << pMatVar->isComplex << endl << "pMatVar->isLogical:" << pMatVar->isLogical << endl << "pMatVar->isGlobal:" << pMatVar->isGlobal << endl; // 釋放 Mat_VarFree(pMatVar); pMatVar = 0; // 繼續遍歷 pMatVar = Mat_VarReadNextInfo(pMatFile); } // 關閉mat檔案 Mat_Close(pMatFile); pMatFile = 0; return true;}
Demo測試
double資料型別
struct+doubleSeries型別
doubleSeries資料型別
工程模板
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70010283/viewspace-2843305/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- libzip開發筆記(一):libzip庫介紹、編譯和工程模板筆記編譯
- Gif開發筆記(一):gif介紹、編譯和工程模板筆記編譯
- Qt+ECharts開發筆記(一):ECharts介紹、下載和Qt呼叫ECharts基礎柱狀圖DemoQTEcharts筆記
- libzip開發筆記(二):libzip庫介紹、ubuntu平臺編譯和工程模板筆記Ubuntu編譯
- Qwt開發筆記(一):Qwt簡介、下載以及基礎demo工程模板筆記
- Qt+ECharts開發筆記(三):ECharts的柱狀圖介紹、基礎使用和Qt封裝DemoQTEcharts筆記封裝
- Qwt開發筆記(二):Qwt基礎框架介紹、折線圖介紹、折線圖Demo以及程式碼詳解筆記框架
- Mqtt開發筆記:windows下C++ ActiveMQ客戶端介紹、編譯和使用MQQT筆記WindowsC++客戶端編譯
- Qt+ECharts開發筆記(五):ECharts的動態排序柱狀圖介紹、基礎使用和Qt封裝DemoQTEcharts筆記排序封裝
- Qt+QtWebApp開發筆記(一):QtWebApp介紹、下載和搭建基礎封裝http輕量級伺服器DemoQTWebAPP筆記封裝HTTP伺服器
- Qt+ECharts開發筆記(四):ECharts的餅圖介紹、基礎使用和Qt封裝百分比圖DemoQTEcharts筆記封裝
- 地圖開發筆記(一):百度地圖介紹、使用和Qt內嵌地圖Demo地圖筆記QT
- Qt+OpenCascade開發筆記(二):windows開發環境搭建(二):Qt引入occ庫,搭建基礎工程模板Demo和釋出DemoQT筆記Windows開發環境
- Kinect開發學習筆記之(一)Kinect介紹和應用筆記
- Qt開發筆記:OpenSSL庫介紹、windows上mingw32版本的OpenSSL編譯模組化QT筆記Windows編譯
- 【筆記】Python基礎(二)運算子介紹筆記Python
- libx264開發筆記(一):libx264介紹、海思平臺移植編譯筆記編譯
- matlab學習筆記之基礎知識(一)Matlab筆記
- Qt+MPlayer音樂播放器開發筆記(一):ubuntu上編譯MPlayer以及Demo演示QT播放器筆記Ubuntu編譯
- Qt+騰訊IM開發筆記(一):騰訊IM介紹、使用和Qt整合騰訊IM-SDK的工程模板DemoQT筆記
- vue 基礎入門筆記 14:發表評論 demoVue筆記
- CentOS8安裝Geant4筆記(一):Geant4介紹、編譯和安裝CentOS筆記編譯
- 《Python web開發》筆記 一:網頁開發基礎PythonWeb筆記網頁
- FastAPI基礎之 表單和檔案操作ASTAPI
- FFmpeg開發筆記(四)FFmpeg的動態連結庫介紹筆記
- 優雅的操作檔案:java.nio.file 庫介紹Java
- JavaFx基礎操作【個人筆記】Java筆記
- 以太坊開發框架Truffle基礎使用介紹框架
- (一) MdbCluster分散式記憶體資料庫——基礎架構介紹分散式記憶體資料庫架構
- RocketMQ--原始碼編譯和介紹MQ原始碼編譯
- iOS混合開發庫(GICXMLLayout)一、介紹iOSXML
- Python基礎——檔案操作Python
- Spark基礎-Scala檔案操作Spark
- 檔案IO中基礎操作
- Lustre架構介紹的閱讀筆記-基礎知識架構筆記
- Xtrabackup介紹和使用【基礎篇】
- FFmpeg開發筆記(十六)Linux交叉編譯Android的OpenSSL庫筆記Linux編譯Android
- FFmpeg開發筆記(八)Linux交叉編譯Android的FFmpeg庫筆記Linux編譯Android