我想知道是否有一种方法可以确定特定的MAT文件是v4、v6、v7还是v7.3版本?
我正在寻找一种解决方案,可以使用MATLAB代码确定版本,最好不需要将数据加载到内存中。
在mat文件版本6或之后的开头,会有一些注释。以下代码可以读取它:
function txt=getMatComment(x)
fid=fopen(x);
txt=char(fread(fid,[1,140],'*char'));
txt=[txt,0];
txt=txt(1:find(txt==0,1,'first')-1);
end
看起来评论总是116个字符长,但我没有找到任何参考资料。这段代码读取140个字符并在末尾截断。
我不理解的部分:对于版本6或7,它说MATLAB 5.0 MAT-file
getMatComment
的输出与文件版本之间的对应关系在 MATLAB 首选项(常规/MAT-文件)中给出,如下图所示(来自 R2019b)。 - bbercz
type
命令将其显示出来。它说对于版本 6 和版本 7,值为5.0
,不太清楚发生了什么。 - Danielv4
文件似乎没有注释头,v6
和v7
文件有一个标头说5.0,而v7.3
文件有一个标头说7.3。 - Sam Roberts