7

我在 MATLAB 中有一个非常奇怪的错误,它似乎与我的程序没有直接关系。MATLAB 甚至没有给我一条发生错误的行。

我的程序处理很多文件。我可以处理它们的组而不会出现错误,但是当将它们全部一起处理时,我会收到以下错误:

Caught "std::exception" Exception message is:
Message Catalog MATLAB:interpreter was not loaded from the file. Please check file location, format or contents

这通常发生在大致相同的时间点,但不完全一致。我围绕这一点测试了所有文件,它们都可以工作。这就是为什么我认为它与RAM有关。

如果我尝试再次运行该程序,我会在开始时遇到相同的错误,但在重新启动 MATLAB 后一切都会再次运行正常。

我想知道这是否是基于 C++ 的错误,因为它包含“std::...”

你知道这个错误意味着什么以及我该如何解决它吗?

4

3 回答 3

8

我今天遇到了这个错误,但是我的原因很简单,我每次写新文件时都忘记调用 fclose 了。在我添加 fclose 之后,错误就消失了。

于 2013-03-26T00:52:58.337 回答
6

这看起来像一个安装问题。MATLAB 正在您的安装中寻找一个名为$MATLABROOT/resources/MATLAB/en/interpreter.xml. 检查该文件是否存在 - 您可能需要重新安装。

编辑:原来问题是 OP 的代码泄漏了文件句柄,这意味着 MATLAB 最终无法打开资源文件。

于 2013-03-05T08:31:37.407 回答
0

如果你最后使用 fopen 打开一个没有 fclose 的文件,你就会遇到这个问题。所以解决方法很简单,去fclose文件!

于 2016-05-05T07:03:17.753 回答