在Matlab循环中覆盖数据

时间:2015-11-05 20:42:07

标签: matlab user-interface loops

我在GUI中有一个按钮的下面代码,它要求一对坐标(X,Y),保存在矢量Z中。

我希望它保存不同名称的不同.mat文件(我已经实现了),进行特定次数的迭代(本例中为3次),每次保存Z值时清除编辑框。问题是它会覆盖过去的值,只保留第一个文件中的最后一个值,并在其他文件中生成NaN。

非常感谢任何帮助。

function pushbutton1_Callback(hObject, eventdata, handles)
   folder=pwd;                                                             %Current folder

   x=str2double(get(handles.edit1,'String'));
   y=str2double(get(handles.edit2,'String'));
   z=[x y];

   k=1;
   ng=3;
  while k<=ng
    baseFileName=sprintf('data%02d.mat',k);
    fullFileName=fullfile(folder,baseFileName);
    save(fullFileName);
    S.(sprintf('z%d',k))=z;
    save(baseFileName,'-struct','S');
    k=k+1;

     if k<=ng;
       set(handles.edit1,'String','')
       set(handles.edit2,'String','')   
       x=str2double(get(handles.edit1,'String'));
       y=str2double(get(handles.edit2,'String'));
       z=[x y];        
     end
  end

0 个答案:

没有答案