【发布时间】:2014-04-18 17:48:25
【问题描述】:
我正在编写一个 MATLAB GUI 程序,其中放入文本框中的数据存储在 .dat 文件中。当程序重新加载时,文本框从文件中获取数据(这样用户就不必每次都重新输入他的信息)。这部分代码将数据保存到 .dat 文件中:
fid = fopen('textboxdata.dat', 'wt');
fprintf(fid, '%s\n', host);
fprintf(fid, '%s\n', username);
fprintf(fid, '%s\n', password);
fclose(fid);
[主机、用户名和密码都是字符串]
这部分代码获取数据并放入文本框:
s = dir('textboxdata.dat');
if s.bytes ~= 0
fid = fopen('textboxdata.dat', 'rt');
A = textscan(fid, '%s', 3);
A = A{1};
set(handles.hostbox, 'String', A(1))
set(handles.usernamebox, 'String', A(2))
set(handles.passwordbox, 'String', A(3))
fclose(fid);
end
现在这工作正常,但是当用户尝试使用此数据登录 FTP 服务器时,我收到此错误:
???使用 ==> fprintf 时出错 没有为“单元”输入定义函数。
==> realgui 中的错误>logonbutton_Callback 在 198 fprintf(fid, '%s\n', 主机);
==> gui_mainfcn 中的错误为 96 feval(varargin{:});
==> 42 处的 realgui 中的错误 gui_mainfcn(gui_State, varargin{:});
==> @(hObject,eventdata)realgui('logonbutton_Callback',hObject,eventdata,guidata(hObject)) 中的错误
但奇怪的是,如果你重新输入所有数据,你就可以登录 FTP 服务器就好了!我在这里彻底迷失了。有人知道发生了什么吗?
【问题讨论】:
标签: matlab user-interface textbox fopen printf