如何使用 MAC OS MATLAB 读取在 windows MATLAB 中创建的 .mat 文件

Posted

技术标签:

【中文标题】如何使用 MAC OS MATLAB 读取在 windows MATLAB 中创建的 .mat 文件【英文标题】:How to read .mat files created in windows MATLAB using MAC OS MATLAB 【发布时间】:2015-05-23 06:08:33 【问题描述】:

我有一堆使用 MATLAB 7.10.0 R2010a 在 PC(Windows 8.1)上创建的 .mat 文件。

我正在尝试在带有 Yosemite 的 MAC 上使用 MATLAB 7.12.0 2011a 打开这些文件,但它们无法打开。 以下是文件在 Windows 8.1 的 MATLAB 7.10.0 R2010a 上的保存方式:

save('test.mat',test)

这是在带有 Yosemite 的 MAC 上的 MATLAB 7.12.0 2011a 上加载文件的方式

load 'test.mat'

我收到以下错误消息:

??? Error using ==> load
Unable to read MAT-file /Users/User1/test.mat: not a
binary MAT-file.
Try LOAD -ASCII to read as text.

Error in ==> test at 63
    newdata = load(in_fname);

当我尝试双击任何 .mat 文件时,我会收到一堆红色字体颜色的 java 错误消息。

我在文本编辑器中打开了其中一个 .mat 文件,其顶部显示:

MATLAB 5.0 MAT-file, Platform: PCWIN,

有没有一种方法可以转换文件以便它们在 MAC 上正确读取?

我尝试通过转到 File-->Preferences-->General-->MAT-Files 并将 MAT-file 保存格式切换为 7.3 来以 7.3 格式保存文件,但这并没有解决问题。

【问题讨论】:

您可以访问save 语法吗?尝试更改version flag 或文件格式。 @excaza,试过了,当我尝试另存为 -ascii 时,文件大小为 0KB。并且以 7.3 格式保存也不起作用。 您能否发布确切的错误、保存/加载的确切命令,以及(小)MAT 文件?此外,这种情况会发生在任何类型的数据(甚至只是一个简单的矩阵)上,还是只有当您有更复杂的东西(如结构、单元格数组等)时才会发生? 你能走另一条路吗?所有数据都会出现这种情况吗? 【参考方案1】:

在过去的 20 年里,我在任何版本的 Matlab 中在 Windows、Mac 和 Linux 之间复制 Matlab 文件时从未遇到任何问题。我可以看到的问题是文件是在计算机之间使用 FTP 传输的,而 FTP 认为它是文本,所以它修改了文件,然后在 Matlab 下不再可读。使用闪存驱动器传输文件。

【讨论】:

以上是关于如何使用 MAC OS MATLAB 读取在 windows MATLAB 中创建的 .mat 文件的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Mac OS 上查找用于串行读取的 USB 设备的 /dev/ 名称?

Xamarin.Forms 可以通过 Wi-FI 在 iPhone(真实设备)上工作,而无需连接到来自 VS 2019 CE Windows 10 的真实 Mac Os?

查看文档时,Mac OS 10.8.3 上的 MATLAB r2013a 崩溃

如何在 C++ 中获得 Mac OS X 中主显示器的分辨率?

将 c 程序编译成 MATLAB 格式 MAC OS X

Numpy EIG 在 Mac OS X 10.6 上比 MATLAB EIG 慢大约 4 倍。我究竟做错了啥?