2014-09-22 48 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

相关问题