对高于 7.3 的 matlab 版本使用 Mat_CreateVer

问题描述 投票:0回答:1

我有一个适用于Windows平台的C++应用程序。此应用程序创建 .mat 文件。目前我们仅支持 4、5 和 7.3 版本的 matlab。我们希望添加对更高版本的 matlab 的支持。

在 matio.h(从 https://sourceforge.net/projects/matio/ 下载)的枚举 mat_ft 中,仅支持三个 matlab 版本 4、5 和 7.3

enum mat_ft {
    MAT_FT_MAT73  = 0x0200,   /**< @brief Matlab version 7.3 file             */
    MAT_FT_MAT5   = 0x0100,   /**< @brief Matlab version 5 file               */
    MAT_FT_MAT4   = 0x0010,   /**< @brief Matlab version 4 file               */
    MAT_FT_UNDEFINED =   0    /**< @brief Undefined version                   */

};

创建 .mat 文件 在调用 Mat_CreateVer 时,我们传递上面的枚举

`pMat = Mat_CreateVer(matFileName.append(".mat").toLocal8Bit().data(), NULL,` ***MAT_FT_MAT73***);

这对于 7.3 及以下的 matlab 版本来说是可以的。 我必须为 Matlab R2016b 和其他更高版本(直至 R2023b)调用 Mat_CreateVer() 那么我应该传递什么枚举值?

matlab matio
1个回答
0
投票

MAT 文件版本与引入时 MATLAB 的版本号相对应。 MAT 文件版本 7.3 适用于 MATLAB v7.3(版本 R2006b)及更高版本。自(R2023b 起)以来,文件格式未曾更改,因此仍然是最新的。请参阅此文档页面以获取 MAT 文件版本列表。

另请注意,MATLAB

version
与由
matlabRelease
返回的版本之间存在差异。

© www.soinside.com 2019 - 2024. All rights reserved.