Getting an error while using evalin
13 次查看(过去 30 天)
显示 更早的评论
I am trying to uigetfile in GUIDE. In the .m file, I have this piece of code
function pushbutton1_Callback(~, ~, handles)
filename=uigetfile('*.*','Select a File to Parse');
set(handles.Filename,'String',filename);
evalin('base',['load ' filename]);
C1 = textread(filename, '%s','delimiter', '\n');
I am trying to get the filename in the workspace so that I can use in this part
"C1 = textread(filename, '%s','delimiter', '\n');"
But the error I am getting is
Error using ==> load
Number of columns on line 10 of ASCII file C:\Users\zz21wz\Desktop\xxx.ASC
must be the same as previous lines.
Error in ==> SimpleGUI>pushbutton1_Callback at 86
evalin('base',['load ' NAME]);
Please help
0 个评论
回答(1 个)
Walter Roberson
2014-1-15
This does not have to do with evalin() and instead has to do with the fact that the text file is not consistent in how many columns it has per line.
If what you want to do is textread(), then why are you using the load ? load does not help you get the file name. You already have the file name: it is in "filename".
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Workspace Variables and MAT Files 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!