1.MDF定义
MDF,全称(Measurement Data Format),即测量数据格式,是ASAM(自动化及测量系统标准协会)定义的。MDF的网页https://www.asam.net/standards/detail/mdf/。INCA、CANape等工具,录制的测量数据,都是MDF格式。INCA将文件后缀改成了.dat,其实本质上仍是MDF。
2.MDF查看
MDF是一种二进制文件,需要使用二进制文件编辑器查看。本文推荐使用Notepad++(32位 https://notepad-plus-plus.org/)结合Hex Editor插件(https://sourceforge.net/projects/npp-plugins/files/Hex%20Editor/)。下载Hex Editor插件,放在Notepad++的plugins文件夹。用Notepad++打开MDF文件,点击工具栏中的H字符,即可激活。
![](https://i-blog.csdnimg.cn/blog_migrate/970f35b645c498d7784c5517cf1719bc.png)
3.MDF组成
MDF是由一系列的数据块(block)组成,可以参考Vector文档。篇幅有限,本文只介绍IDBLOCK(Identification block)。
IDBLOCK是MDF文件标识,由文件的头64个字节组成,依次为:
4.MDF解析
以.NET(C#)语言为例,介绍如何读取IDBLOCK。
1)新建类IDBLOCK,代码如下:
![](https://i-blog.csdnimg.cn/blog_migrate/dd4aef730260c5cb7b6dc498d025a3af.png)
2)使用FileStream读取文件的64个字节,转化为IDBLOCK:
![](https://i-blog.csdnimg.cn/blog_migrate/bff1483eee7d9d38b0e65bed5843f304.png)
调试状态下idBlock的值:
5.MDF开源资料
MDF应用广泛,在github、sourceforge等网站,有很多开源代码。
*关注微信公众号"汽车软件技术"获得更多信息。