我得到一个错误论点必须包含一个字符串。
6视图(30天)
显示旧的评论
sivalogan satchithanandamoorthy
2017年5月8日
评论道:
sivalogan satchithanandamoorthy2017年5月8日
[文件名,filePath] = uigetfile ({‘* . txt”},“选择文件”,“多选”,“上”)
pathToFile = fullfile (filePath文件名)
x =大小(pathToFile, 2)
商店=负载(pathToFile (: 1));
提示=“请选择压力列”;
压力=商店(:,输入(提示);
提示=“请选择应变列”;
应变=商店(:,输入(提示);
接受的答案
沃尔特·罗伯森
2017年5月8日
商店=负载(pathToFile {1});
你有多选,你选择多个文件,所以pathToFile单元阵列的字符串。pathToFile(: 1)将一个细胞的字符串数组。当你使用多选,你得到一个
行
矢量单元阵列,所以pathToFile(: 1)将会是一个1 x 1单元阵列的字符串。你不能负载()使用一个字符串单元阵列:你必须加载()等特征向量pathToFile {1}
警告:当多选,但用户只选择一个文件,第一个输出是一个char向量;如果用户选择多个文件,那么第一个输出单元阵列的字符串。你绝对不应该假定用户选择多个文件,所以你应该预防的可能性:
[文件名,filePath] = uigetfile ({‘* . txt”},“选择文件”,“多选”,“上”);
如果isnumeric(文件名);disp (“取消!”);返回;结束
文件名= cellstr(文件名);%转换可能单一字符串单元阵列,树叶现有单元数组的方式。