MATLAB提供了 mfilename
函数。它返回调用函数的文件的名称,但是不幸的是,它返回不带extension的文件名。
因此,例如,如果我们有一个名为myfile.m
的文件,并且在该文件内调用mfilename
,它将返回字符串'myfile'
但不返回'myfile.m'
我也看过 fileparts
函数,但它也没有用,因为它仅解析您提供的字符串。
我正在开发一段基于文件扩展名的具有不同行为的代码。因此,例如,它需要知道在run time处文件的扩展名是.m
还是.p
。
您可以检查与MATLAB here相关的扩展列表。
我该怎么做?
最佳答案
Looking at the docs,看来您可以从dbstack
命令获得所需的信息,但是这需要一些小的附加处理。
[ST, I] = dbstack('-completenames', 1)
ST =
file: 'C:\myProject\myfile.m'
name: 'myfile'
line: 2
关于matlab - 如何找到当前正在运行的代码的文件扩展名?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47421071/