2014-09-22 54 views
-1

我想在gui編輯文本中編寫文件名並將編輯文本保存爲我的文件名。比我可以保存文件名,如我所願。例如;我的文件是一個神經網絡文件,可以保存爲* .mat文件;這裏是我的代碼從Matlab中的編輯文本獲取文件名?

 %network_name is my edit text 
     name = get(handles.network_name,'string'); 
     name = net; 
     save name 

但它不工作,我不能從編輯文本:(

它保存爲名字爲L寫道下一步保存(name.mat)。由於管理文件名你任何答案...

回答

1

爲什麼name = net;

這且不說,如果你要的文件名作爲傳遞一個變量到save功能,你需要使用這個語法來代替:?

save(name) 

save name是「命令形式」,而save('name')是相應的「函數形式」。正如你所看到的,你只能使用命令形式給出字符串輸入,而實際上你想傳遞一個變量。

總結:如果您要將變量傳遞給函數,請使用函數形式。

如果你想保存特定的變量,使用:

save(name,'net'); 

注意name(這是我們希望包含在變量中的字符串)不在報價和net(變量名我們想保存)是。


這個警告實際上埋藏save的文件中。

當任何輸入(如文件名, )都是變量時,請勿使用命令表單。

+1

澄清一點究竟是什麼牛逼他的區別在於功能和命令形式之間。 – 2014-09-22 09:43:34

+0

定義「沒有工作」。您可能希望將調試點放在一步,確保「name」是您期望的字符串。 – nkjt 2014-09-22 09:46:20

+0

感謝您的回答,但我已經嘗試過,它沒有工作:(我想通過從文本文件中獲取我的神經網絡文件名。和name = net;是指我複製我的網名稱。 – mari 2014-09-22 09:48:15

0
save name 

將在工作區保存所有的變量,以所謂的「名」

而且你的代碼基本上覆蓋本身就是一個* .MAT文件,2號線將變量name是一個字符串,但是第3行將一些數據net寫入該變量。

我有點困惑,你想要什麼,但我想你想將變量net保存到你的字符串中從get(handles.network_name,'string')

讀名稱的墊子文件如果這是你想要做那麼它只是

save(get(handles.network_name,'string'), net) 

如果要保存所有打開variabile的工作區,然後它只是

save(get(handles.network_name,'string')) 
+0

???錯誤使用==>保存 參數必須包含一個字符串。 錯誤==> NeuralNetwork> CreateNetwork_Callback at 613 save(get(handles.network_name,'string'),net); 錯誤==> gui_mainfcn at 96 feval(varargin {:}); 當我使用這條線它給了我這個錯誤 – mari 2014-09-23 13:34:38

+0

保存(get(handles.network_name,'string'))這條線可能可以幫助我有時它發生,並不能用這樣容易的事情來計算。謝謝:) – mari 2014-09-23 14:03:06

+0

問題是,當我用save保存(get(handles.network_name,'string'))我無法到達網絡文件。它將所有變量保存在一個文件中,並且有辦法達到特定變量? – mari 2014-09-24 09:10:23

相關問題