如何读取存储为.mat文件并将3 * 3 * 2多维双数据存储到c/C++数组中的Matlab cell array?在C/C++程序中使用Matlab单元格数组
3
A
回答
0
此文档描述了读取和写入文件MAT的界面在C/C++:
http://www.mathworks.com/access/helpdesk/help/techdoc/matlab_external/f39876.html#f13830
1
1
与libmx.lib,libmat.lib,libeng.lib链接,并包含头文件mat.h和engine.h。我忽略了数据的虚构成分,并假设你知道如何使用C++ STL。下面的代码是足够的,但一个叫mxWrapper容易接口可以在这里找到:http://www.mathworks.com/matlabcentral/fileexchange/28331-replacement-for-mwarray-using-matlab-engine
vector<double> readSomeNumbers() {
vector<double> data;
mxArray *pMx=load("c:\\someFile.mat", "foobar");
if (!pMx) return data;
ASSERT(mxGetClassID(pMx) == mxDOUBLE_CLASS);
data.assign(mxGetPr(pMx), mxGetPr(pMx)+mxGetNumberOfElements(pMx));
mxDestroyArray(pMx);
return data;
}
mxArray *load(const string& fileName, const string& variableName)
{
MATFile *pmatFile = matOpen(fileName.c_str(), "r");
if(pmatFile == NULL)
return NULL;
mxArray* pMx = matGetVariable(pmatFile, variableName.c_str());
if(pMx == NULL)
{
matClose(pmatFile);
return NULL;
}
matClose(pmatFile);
return pMx;
}
相关问题
- 1. 在matlab中对单元格数组进行排序
- 2. 将单元格数组的单元格数组转换为matlab中的列表
- 3. Matlab单元格数组解析
- 4. 返回matlab中不包含全零的单元格数组中的单元格
- 5. 从matlab中提取单元格数组中的单词
- 6. 当创建包含单元格数组的单元格时,避免在matlab中循环使用
- 7. 在Matlab中创建嵌套单元格数组?
- 8. 在Matlab中打印单元格数组为.txt
- 9. 如何在Matlab中过滤单元格数组?
- 10. Matlab - 按属性对对象的单元格数组排序
- 11. matlab to python:获取matlab单元格数组值
- 12. 在matlab中对单元格数组进行排序并获取新索引
- 13. 如何在MATLAB中连接单元数组的一部分的单元数组?
- 14. 使用单元格阵列从表中检索数据 - Matlab
- 15. Matlab中的结构内的单元格数组 - 可能吗?
- 16. 删除字符串单元格数组中的字符(Matlab)
- 17. 将单元格数组转换为MATLAB中的字符串单元阵列
- 18. MATLAB单元格数组到单个变量
- 19. 如何在Matlab中为单元格数组的每个单元格插入一个数字?
- 20. 在MATLAB中使用datenum()转换单元格时出错
- 21. 向表格单元格添加数组数据时应用程序崩溃
- 22. 如何在matlab中连接单元格数组中的字符串
- 23. 如何在Matlab中复制单元格中的数字向量
- 24. 将单元格数组分成几列MATLAB
- 25. MATLAB搜索单元格数组的字符串子集
- 26. Matlab将单元格数组保存到文本文件
- 27. 如何将单元格数组从MATLAB传递到.NET方法
- 28. 将数据作为单元格数组导入到MATLAB中的脚本中
- 29. MATLAB字符数组单元阵列
- 30. 如何在数组中使用foreach时获取数组单元格的位置?
我读的文档,但我有点困惑。我怎样才能将数据从mxarray数据结构导入到像多dim双数组这样的基本数据结构?任何人都可以给我一个代码片段.. – iceman 2010-01-27 20:19:02
我看到了文件matdgns.c – iceman 2010-01-27 20:27:31