Matlab错误:dataread第二个输入必须是要解析的文件名或字符串

时间:2016-01-03 19:58:28

标签: matlab

我正在尝试使用以下代码

在editbox中填充字符串
 text=get(handles.edit1, 'string'); %get editbox text

  [A]=strread(text,'%s','delimiter',' ');

但它正在给出错误

  

使用==>时出错DATAREAD   第二个输入必须是要解析的文件名或字符串。

     

==>中的错误在51开始       [varargout {1:nlhs}] = DATAREAD( '字串',varargin {:});

如果我直接将字符串传递给strread  [A]=strread('Hello folks','%s','delimiter',' '); 然后它工作正常。

为什么它不能与editbox一起使用。请帮帮我。

1 个答案:

答案 0 :(得分:1)

我没有Matlab,但我有GNU octave,它通常具有类似的功能。

计算并修改创建代码from link

% Create the figure
mFigure = figure('Name', 'myplot', 'Tag', 'main')

% Create a uicontrol of type "text"
mTextBox = uicontrol('style','text','Tag','edit1')
set(mTextBox,'String','Hello World')

handles = guihandles(mFigure);

% the code from OP goes here
text=get(handles.edit1, 'string'); %get editbox text

[A]=strread(text,'%s','delimiter',' ');
A

输出结果为:

A = 
{
  [1,1] = Hello
  [2,1] = World
}