MAT文件是matlab专用于保存数据至磁盘和想matlab导入、从matlab导出数据的数据文件格式。MAT提供了一种简单的机制,它允许两个平台之间以灵活的方式移动数据。为了简化在matlab环境之外对MAT文件的使用,matlab给出了一个lib,用于读写MAT文件。主要包括以下库函数matOpen(打开), matClose(关闭), matGetDir(), matGetFp()等等。
在不支持matlab平台的系统里使用MAT文件就需要自己根据MAT的格式读取其中的数据。MAT文件格式有version4,version5版本的。现在这里主要讲解version5版本的格式。
在matlab version 5中,MAT文件由一个128字节的文件头和若干个数据单元组成。每个数据单元有一个8个字节的tag,用于说明数据单元的占用的字节数(不包括tag的8个字节)和数据类型。
文件头header里有124字节的文本描述区域和4个字节的flag。flag中的前2个字节说明version,后两个字节是endian indicator。文本描述区域主要说明MAT文件的版本,创建于哪个平台,创建时间。flag中的version说明的是创建这个MAT文件的matlab的版本。edian indicator包括两个字符M和I。
关于edian:endian: The ordering of bytes in a multi-byte number.
定义:在计算机系统体系结构中用来描述在多字节数中各个字节的存储顺序。相