필터 지우기
필터 지우기

Save workspace and move file

조회 수: 2 (최근 30일)
Clément P
Clément P 2016년 4월 5일
댓글: Orion 2016년 4월 5일
Hi everyone,
I have an issue with saving variables. I want to save my variables in a .mat file in a specified folder. Here is my code :
if get(handles.box2,'Value')==1
pexp=mise_en_structure(handlesGUI3);
save(filename,'pexp');
end
movefile('filename','../Données sauvegardées');
guidata(handles.h,handles);
I have this error message :
Error using movefile
No matching files were found.
Error in GUI_Sauvegarder>pb_Callback (line 43)
movefile(filename,'../Données sauvegardées');
Error using waitfor
Error while evaluating uicontrol Callback
Do you have any idea how to solve this? (Except pause(n))
filename is defined like this : (where SpecID is a string)
filename=handles.essais.SpecID{1};
Thanks. Clément

채택된 답변

Orion
Orion 2016년 4월 5일
One way to do it .
% name of all files with different extension : toto.m, toto.mat,...
filename = 'toto';
allfiles = dir(pwd);
FilesTomove = {allfiles(strncmp({allfiles.name},filename,length(filename))).name};
for i = 1:length(FilesTomove)
movefile(FilesTomove{i},'../Données sauvegardées');
end
It may be not the "easier" method :)
  댓글 수: 3
Clément P
Clément P 2016년 4월 5일
Ahah yes I found that one too after some research. But I didn't put the '.'.
Here is the code :
filename=handles.essais.SpecID{1}
%save in different extensions depending on user's choices
filename=[filename '*'];
movefile(filename,'./Données sauvegardées');
Thanks!
Orion
Orion 2016년 4월 5일
Be careful, it's not the same.
with '.*', you will get all the files with any kind of extension. toto.m, toto.mat, toto.xls
but with '*' only, you 'll get all the files that begin with your string : toto.m, toto.mat,totofhzerufhzeri.mat,toto2.m,...

댓글을 달려면 로그인하십시오.

추가 답변 (2개)

Orion
Orion 2016년 4월 5일
Hi,
you try to move a file named filename
movefile('filename','../Données sauvegardées');
you need something like :
movefile(filename,'../Données sauvegardées');
  댓글 수: 1
Clément P
Clément P 2016년 4월 5일
Hi,
thanks for answering.
I tried this too. I get the same error message. :/

댓글을 달려면 로그인하십시오.


Orion
Orion 2016년 4월 5일
I guess it misses the .mat extension in the variable filename.
You need to add it :
change
filename=handles.essais.SpecID{1};
by
filename=[handles.essais.SpecID{1} '.mat'];
  댓글 수: 1
Clément P
Clément P 2016년 4월 5일
Yes i just found out that too. Is there a way to get all files named 'filename' without taking into account the extension?
I have multiple extensions possible, depending on user's choices.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Migrate GUIDE Apps에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by