Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在MATLAB中查找当前m文件的位置_Matlab - Fatal编程技术网

在MATLAB中查找当前m文件的位置

在MATLAB中查找当前m文件的位置,matlab,Matlab,我在许多不同的地方编写代码,如果我能让代码知道它在计算机上的位置,那将非常有帮助。我想有一个函数能准确地给出这些信息,但我记不起它叫什么,也记不起它在谷歌上的名字 我的想法是,我有一个函数myFunc,它需要在自己的目录中有一个文件,可以在不同的计算机上的不同位置。因此,在myFunc中,我想做如下操作: dir = theFunctionImLookingFor; system(fullfile(dir, 'someApp.exe')); (也可能是我正在寻找的函数没有返回目录,而是返回目录

我在许多不同的地方编写代码,如果我能让代码知道它在计算机上的位置,那将非常有帮助。我想有一个函数能准确地给出这些信息,但我记不起它叫什么,也记不起它在谷歌上的名字

我的想法是,我有一个函数
myFunc
,它需要在自己的目录中有一个文件,可以在不同的计算机上的不同位置。因此,在
myFunc
中,我想做如下操作:

dir = theFunctionImLookingFor;
system(fullfile(dir, 'someApp.exe'));
(也可能是我正在寻找的函数没有返回目录,而是返回目录+m文件名,但这对我来说没有什么区别。)

或者更好的
mfilename('fullpath')
另一种方法,通过使用函数:

S = dbstack('-completenames');
S(1).file

在处理类时,我通常喜欢将相关数据保存在类目录中。我过去常常找到那条路,然后把它劈开

[folder, name, ext] = fileparts(which('object'));

其中“object”可以是函数名或类名。对我来说,这种方法的优点是,您可以从所讨论的mfile外部调用它。例如,如果需要从基类获取派生类的路径,则必须执行此操作。

此操作仅在运行完整文件时返回路径。从命令窗口执行或运行单个单元格时,返回空字符串。