To change Current Folder to the folder of .m File
219 views (last 30 days)
Show older comments
How can I change the current folder to folder of .m file in my code.
Possibly with cd command
Or any command I can indicate that my excel file is in same location as .m file.
e.g. code.m path folder\My excel file.xls
0 Comments
Answers (4)
Image Analyst
on 17 Apr 2013
Edited: Image Analyst
on 17 Apr 2013
Here's some code I got from Brett Shoelson of the Mathworks:
% Change the current folder to the folder of this m-file.
if(~isdeployed)
cd(fileparts(which(mfilename)));
end
Edit: Note that the isdeployed is important if you will be compiling and deploying your application. This let's it operate both for you, as the developer, and for your deployed application where it will skip the cd because doing cd like that in a deployed app can wreak havoc. If you won't be doing compiling, then you can do just the cd without the if.
3 Comments
Yannis Axaopoulos
on 26 Nov 2022
Edited: Yannis Axaopoulos
on 27 Nov 2022
This command that ran fine in my MATLAB R2015b, is not actually working in the newest R2022a!
EDIT:
Actually find the solution in an other answer
% Change the current folder to the folder of this m-file.
if(~isdeployed)
cd(fileparts(matlab.desktop.editor.getActiveFilename));
end
Diaa
on 15 May 2021
1 Comment
Javier Ros
on 4 Mar 2022
This works, but the problem is that most people expects code in .m file to work in .mlx and viceversa.
I think that this issue should be adressed by MATLAB's guys.
Best regards,
Javier
Florian
on 13 Jul 2018
mfile_name = mfilename('fullpath');
[pathstr,name,ext] = fileparts(mfile_name);
cd(pathstr);
0 Comments
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!