How do I access a .m file in a subfolder?

84 次查看(过去 30 天)
Hi Matlab community,
how do I access a .m file in a subfolder? In my case, the name of the subfolder would be "Workspace" and the name of the file in the subfolder would be "constants.m".
Best regards
  4 个评论
Stephen23
Stephen23 2022-9-5
"I want to open a .m file with a command in another .m file."
This is still unclear: do you want to FOPEN the file? (i.e. open the file for reading/writing using FSCANF/FPRINTF/...)
Or do you mean open in the sense of using some app installed on your computer to open the file? Or something else?
When you are not precise with explaining what you want, then you delay getting an answer.
Benjamin Pommer
Benjamin Pommer 2022-9-5
Actually, I wanted to open and run the file to get the variables in my workspace to further process them in my current file.

请先登录,再进行评论。

采纳的回答

Rik
Rik 2022-9-5
编辑:Rik 2022-9-5
If you want the read the file as text:
You can use a relative path:
txt=fileread(fullfile('Workspace','constants.m'));
You can also include the current working directory explicitly:
txt=fileread(fullfile(pwd,'Workspace','constants.m'));
Edit:
If you want to run the m file, that depends on whether it is a function or a script. You need the run function for a script file. For a function you should add the folder to your path and simply call the function.

更多回答(1 个)

Image Analyst
Image Analyst 2022-9-5
Add it to your path. In your main script, have this line
addpath(genpath(pwd));
After that you should be able to call any other scripts or functions in your "Workspace" subfolder or any other subfolders of where your main script lives.
If you want to make that permanent, then also call savepath
savepath;

类别

Help CenterFile Exchange 中查找有关 Search Path 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by