简明教程 C程序读取.mat格式的Matlab数据文件
2016-09-02 16:36
513 查看
之前需要Matlab保存训练数据,并由C调用,直接用.txt时,读取有些慢,就想用.mat标准格式存取,而且Matlab有自带API
C程序读取.mat,网上有教程,而且Matlab官方也有教程和例子,这里就简明介绍,另外本文的方法不用配置路径,代码放到没安装过Matlab的机器上也可以跑,方法如下:
.
.
详细参考,官方文档,MAT-File API和其相关链接,包含了从环境配置,到C的API,足够实现读mat的需求了
http://cn.mathworks.com/help/matlab/read-and-write-matlab-mat-files-in-c-c-and-fortran.html
对应源码在以下目录
matlabroot\extern\examples\eng_mat
libmat.lib
libmx.lib
mat.h
matrix.h
tmwtypes.h
这些dll是我运行exe缺一个,补一个找的,可谓呕心沥血
A: Matlab2015a
Q: 参考
A: http://cn.mathworks.com/help/matlab/read-and-write-matlab-mat-files-in-c-c-and-fortran.html
这篇中文教程,也比较完整 http://blog.csdn.net/left_la/article/details/8206645
Q: 自己写的读取代码各种出错,而且不知原因所在?
A: 一般是内存报错,说明解析时,变量读取的层级有误,说白了读取的C代码写错了
对照官方示例,一层层耐心剖析方能解决
C程序读取.mat,网上有教程,而且Matlab官方也有教程和例子,这里就简明介绍,另外本文的方法不用配置路径,代码放到没安装过Matlab的机器上也可以跑,方法如下:
一、保存mat文件
在Matlab中用save函数保存变量到.mat文件(任何格式的变量均可,matrix,struct,cell都能读)二、读取mat文件
在C程序中,用对应的函数,打开和读取该文件即可大功告成!
..
.
详细参考,官方文档,MAT-File API和其相关链接,包含了从环境配置,到C的API,足够实现读mat的需求了
http://cn.mathworks.com/help/matlab/read-and-write-matlab-mat-files-in-c-c-and-fortran.html
对应源码在以下目录
matlabroot\extern\examples\eng_mat
三、挣脱依赖
为了让不装Matlab的机器也能跑,饼哥放弃设置引用路径,而将所有依赖项都复制到项目目录下,需要以下这些文件:libmat.lib
libmx.lib
mat.h
matrix.h
tmwtypes.h
这些dll是我运行exe缺一个,补一个找的,可谓呕心沥血
Q&A
Q: 版本A: Matlab2015a
Q: 参考
A: http://cn.mathworks.com/help/matlab/read-and-write-matlab-mat-files-in-c-c-and-fortran.html
这篇中文教程,也比较完整 http://blog.csdn.net/left_la/article/details/8206645
Q: 自己写的读取代码各种出错,而且不知原因所在?
A: 一般是内存报错,说明解析时,变量读取的层级有误,说白了读取的C代码写错了
对照官方示例,一层层耐心剖析方能解决
相关文章推荐
- matlab的各种数据读取(txt,dat,mat等格式),文件打开关闭
- matlab的各种数据读取(txt,dat,mat等格式),文件打开关闭
- 读取siftgeo格式文件的matlab程序
- net控件中数据导到Excel的格式 首先,我们了解一下excel从web页面上导出的原理。当我们把这些数据发送到客户端时,我们想让客户端程序(浏览器)以excel的格式读取它,所以把mime类型设为:application/vnd.ms-excel,当excel读取文件时会以每个cell的格式呈现数据,如果cell没有规定的格式,则excel会以默认的格式去呈现该cell的数据。这样就给我们提供了自定义数据格式的空间,当然我们必须使用excel支持的格式。下面就列出常用的一些格式: 1) 文本
- MATLAB处理txt文本文件---数据格式要有规律性,否则要用编写特定方式进行读取
- matlab 中mat格式数据保存与读取
- python——读取MATLAB数据文件 *.mat
- FIT文件格式解析及MATLAB读取程序
- 读取siftgeo格式文件的matlab程序
- 【转】Java读取matlab的.mat数据文件
- FIT文件格式解析及MATLAB读取程序
- matlab 批量读取数据文件.mat .dat
- matlab处理txt文本文件---数据格式要有规律性,否则要用编写特定方式进行读取
- 读取siftgeo格式文件的matlab程序
- MATLAB的.mat文件与txt文件的相互转换(mat转txt,数据格式设置)
- matlab中读取txt数据文件(txt文本文档)
- 直接用SQL语句读取几种常见的文件格式中的数据
- DOS批处理:读取配置文件,格式 与 程序,例子
- Matlab中如何读取TXT数据文件[转载]
- matlab中如何读取TXT数据文件 (续)