2017-08-14 114 views
0

我使用GUIDE在matlab中编写了一个GUI,并且我使用的数据结构保存为.mat文件放在matlab应用程序的本地目录中。该.MAT文件是用来传输不同功能之间的变量在GUI中,例如,在函数的开始,我会写如何部署保存.mat文件文件的matlab代码以在函数之间进行通信,并将数据保存在本地目录中

load data; 

,我将有机会获得以前存储的所有变量。我正在尝试使用matlab编译器创建独立应用程序,但是,应用程序似乎并未将矩阵保存在本地目录中,或者以.mat格式保存任何结果。有什么解决方法吗?我需要.mat功能来分析视频,并将每个帧数据保存在我在本地目录中创建的文件夹中的单独.mat文件中。

回答

0

当您运行编译的MATLAB应用程序时,.exe文件将自身解包到临时文件夹中,并在那里运行。在应用程序中,您可以使用命令ctfroot访问解压缩到的文件夹。

您可以参考相对于此命令输出的文件夹,例如, matfilefolder = fullfile(ctfroot, 'matfiles')

或者,您可能会发现使用临时文件夹来存储文件更容易或更易于维护。您可以使用命令tempdir获取系统临时文件夹的路径,然后在其中创建一个子文件夹。

如果您需要应用程序在MATLAB中运行时与在编译时运行不同,可以使用命令isdeployed,编译时返回true,否则返回false,然后根据输出切换行为。

相关问题