从Matlab中的编辑文本中获取文件名?

时间:2014-09-22 09:07:06

标签: matlab

我想在gui编辑文本中写入文件名,并将编辑文本保存为我的文件名。我可以按照自己的意愿保存文件名。例如;我的文件是神经网络文件,可以保存为* .mat文件;这是我的代码

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

但它不起作用我无法从编辑文本管理文件名:(

它保存为我在save(name.mat)旁边写的名字。谢谢你的回答...

2 个答案:

答案 0 :(得分:1)

为什么name = net;

除此之外,如果您想将文件名作为变量传递给save函数,则需要使用以下语法:

save(name)

save name是“命令表单”,save('name')是相应的“函数表单”。如您所见,您在使用命令表单时只能提供字符串输入,而您实际上想要传递变量。

总结:如果要将变量传递给函数,请使用函数形式。

如果要保存特定变量,请使用:

save(name,'net');

请注意name(我们希望它是变量中包含的字符串)不在引号中,net(我们要保存的变量的名称)是。


有关此问题的警告实际上已隐藏在save的文档中。

  

在任何输入时不要使用命令格式,例如文件名,   是变量。

答案 1 :(得分:0)

save name

会将工作区中的所有变量保存到名为' name'

的* .mat文件中

此外,您的代码基本上覆盖了自己,第2行将变量name设置为字符串,但第3行将一些数据net写入该变量。

我对你究竟想要什么感到困惑,但我认为你想要将变量net保存到一个mat文件,其中包含你在get(handles.network_name,'string') <字符串中读取的名称/ p>

如果这是你想要做的,那么它只是

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

如果要在工作区中保存所有打开的变量,那么只需

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