Re: [問題] for迴圈問題已回收
再請教抓值的問題
fid=fopen('C:\StockData\base_analysis.txt','a');
for i = 1:22
eval(['edit(',num2str(i),')=get(handles.edit',num2str(i),'),''string''']);
end
如果是用慢慢抓值的方式,
edit1=get(handles.edit1,string);
fprintf(fid,'%s',edit1)
能把edit1(gui裡輸入)的值,存在base_analysis.txt裡頭
我換成eval的寫法,在command裡頭出現的是
edit =
BackgroundColor: [1 1 1]
下略
ans =
string
edit =
1x2 struct array with fields:
BackgroundColor
下略
1x3
想請問為何抓到的不是edit內的值
謝謝
fprintf(fid,'%s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s',edit1,edit2,edit3,edit4,edit5,edit6,edit7,edit8,edit9,edit10,edit11,edit12,edit13,edit14,edit15.edit16.edit17.edit18,edit19,edit20,edit21,edit22);
如果已經抓到edit1~edit22的值,那用最笨的方式%s慢慢對印edit1~22
是否可行
fclose(fid);
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.136.212.205
→
06/17 01:20, , 1F
06/17 01:20, 1F
→
06/17 01:20, , 2F
06/17 01:20, 2F
→
06/17 01:21, , 3F
06/17 01:21, 3F
我後來有在eval裡加分號
eval(['edit(',num2str(i),')=get(handles.edit',num2str(i),'),''string''';]);
^
但是印出來的還是一樣
而在base_analysis.txt裡頭只印出edit1的值
我再試試好了,謝謝
※ 編輯: rogue 來自: 220.136.212.205 (06/17 01:39)
→
06/17 01:42, , 4F
06/17 01:42, 4F
請問
fid=fopen('C:\StockData\base_analysis.txt','w');
for i=(1:22)
eval(['edit(',num2str(i),')=get(handles.edit',num2str(i),'),''string'';']);
等同 edit(1) =get(handles.edit1 ,'string');
然後會跑22次,-> edit1.get(handles.edit1,'string');
edit2.get(handles.edit2,'string');
到edit22.get(handles.edit22,'string');
之後
我用fprint(fid,'%s'(x22個),edit1,edit2,~edit22);
fclose(fid)
但完全沒印出東西
如果有人知道哪邊錯,麻煩指點一下,謝謝
※ 編輯: rogue 來自: 220.136.212.205 (06/17 02:49)
for i=1:22 跑第一圈時
eval(['edit(',num2str(i),')=get(handles.edit',num2str(i),'),''string'';']);
應該不等同 edit(1) =get(handles.edit1 ,'string');
應該是這邊出了問題
參考3932的討論串,改成完全一樣也不能跑,再trytry
※ 編輯: rogue 來自: 220.136.209.122 (06/17 20:01)
→
06/17 20:06, , 5F
06/17 20:06, 5F
→
06/17 20:06, , 6F
06/17 20:06, 6F
→
06/17 21:56, , 7F
06/17 21:56, 7F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
1
11
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章