4

我正在使用 Matlab 生成一个大矩阵,我想在 C 中使用它。

如何在 C 中读取 Matlab 的 .mat 文件?

如果可以,请回答如何?

4

3 回答 3

3

据说 Matlab 提供了自己的 API 来从 C 访问此类文件: 读写 MAT 文件。我自己没有使用过,所以我不知道这是多么简单。

如果你真的想访问二进制数据,搜索引擎想出了这个 PDF 文件matfile_format.pdf,它描述了整个格式。这绝对不是一个简单的解决方案。

但是,您可以在 Python 中轻松读取此类文件,请参阅主题。以这种方式读取文件并以易于在 C 中使用的格式再次写入文件似乎是一个很好的解决方案。

于 2013-10-07T15:24:53.010 回答
1

matOpen (C)

C 语法

#include "mat.h"
MATFile *matOpen(const char *filename, const char *mode);

filename 要打开的文件的名称。

mode 文件打开模式。

这里有例子和解释。 这里有 MAT-file API 的所有链接。我建议阅读和研究示例。

于 2016-05-13T08:40:53.927 回答
-2

如果只是文字就足够了...

#include <stdio.h>
#include <stdlib.h>

int main()
{

    FILE *pf;

    pf = fopen("something.m", "r");

    int buffer;

    while (buffer != EOF)
    {

        buffer = getc(pf);
        printf("%c", buffer);

    }



}
于 2013-10-07T14:53:44.197 回答