Error using cd Cannot CD to ...(Name is nonexistent or not a directory)

15 vues (au cours des 30 derniers jours)
Curious Mind
Curious Mind le 6 Avr 2020
Hi,
I have the following code
oldp = uicontrol(fig,...
'Style', 'Push',...
'BackgroundColor', [1 1 .7],...
'units', 'normalize',...
'Position', [0 .333 1 .333],...
'String', 'Open an existing Project',...
'Callback', [...
' [projfile,projpath] = uigetfile(''*.prj'',''Select Project File '');',...
' cd(projpath);',...
' load(projfile,''cp'',''-mat'');',...
' close(gcf);',...
' clear projpath projfile newp oldp stringforhelp ui*; '...
]...
);
I am getting this error:
Error using cd
Cannot CD to C:\...(Name is nonexistent or not a directory)
Any idea? thanks
  2 commentaires
Stephen23
Stephen23 le 6 Avr 2020
Do NOT define the callback as a character vector. The MATLAB documentation
states "Defining a callback as a character vector is not recommended". Specifying the callback with a function handle is recommended, and will make debugging your code much easier.
Do NOT use cd just to read/write data files. All MATLAB functions that read/write data files accept absolute/relative filenames: you should use fullfile to generate the absolute/relative filename and pass that to load (or whatever function you use for reading/writing data files).
Using clear is rarely required in code, and is almost always overused by beginners.
Curious Mind
Curious Mind le 6 Avr 2020
Modifié(e) : Curious Mind le 6 Avr 2020
Hi Stephen, I will admit I am a beginner in Matlab. The code worked with no issues in Matlab v2014a. I am now using 2019b and I am getting the error. Any help with how my code should look like?
Thanks!

Connectez-vous pour commenter.

Réponses (1)

Maadhav Akula
Maadhav Akula le 13 Avr 2020
Hi,
You can write the following lines in your callback function:
[projfile,projpath] = uigetfile('*.prj','Select Project File ');
abs_filepath = fullfile(projpath,projfile);
load(abs_filepath,'cp','-mat');
Hope this helps!

Catégories

En savoir plus sur Get Started with MATLAB dans Help Center et File Exchange

Tags

Produits


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by