24小时热门版块排行榜    

查看: 763  |  回复: 5
当前主题已经存档。

lchuahp

木虫 (小有名气)

[交流] 【求助】数据导入函数uigetfile的使用问题

使用数据导入函数uigetfile的MultiSelect多个数据导入功能时,发现能够导入的数据名称和数据个数有限制,数据名称越长则数据个数就越少,好像数据名称的长度和导入数据个数之间的乘积有一个上限值,超过这个上限值了就会报错。这样的话数据多了就得分批次导入处理,感觉挺麻烦的。不知各位高手有没有更好的解决办法,敬请赐教,万分感谢!
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zjliu1265

至尊木虫 (正式写手)

我写了下面一段程序来多选文件名,该程序可以返回当前文件夹下的
所有文件(如果你的数据文件在其他路径你更改一下路径即可)。
a=dir; % a=dir(path); % 更改路径
An=char(a.name);
An(1:2,=[];
Aname=[];
for k=1:size(An,1)-1;
    Aname=[Aname,An(k,,'|'];
end
Aname=[Aname,An(end,];
po1=uicontrol(gcf,'style','listbox',...
    'unit','normalized','position',[0.2,0.2,0.2,0.4],...
    'string',Aname,'max',size(An,1),...
    'fontsize',10,'callback',['nn=get(po1,''Value'');',...
        'As=An(nn,']);
% 其中As是被选文件的名字
tx1=uicontrol(gcf,'style','text',...
    'unit','normalized','position',[0.17,0.65,0.26,0.06],...
    'string','Please select your files','ForegroundColor','r',...
    'fontsize',10);


% 附图是执行效果图
2楼2009-09-09 10:10:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zjliu1265

至尊木虫 (正式写手)

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
lchuahp(金币+10,VIP+0):谢谢! 9-9 20:27
把M文件和txt文件压缩传一下,如附件
3楼2009-09-09 10:16:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lchuahp

木虫 (小有名气)

非常感谢您的帮助!

不过,我用您的代码无法将数据导入到内存中。
我主要是想将一系列的数据导入到内存中,然后对导入的这些数据处理。

下面的一段代码可以实现数据的导入:

clear;clc;close all;
%读取数据文件
[filename, pathname, s] = uigetfile( ...
    {'*.csv;*.txt',  '数据文件(*.csv,*.txt)';...
    '*.*',           'All Files (*.*)'}, ...
    '选择数据文件',  'MultiSelect', 'on')
filecount = size(filename);%filecount(2)中保存的是导入的数据个数
data = [];
for i=1:filecount(2)
    data_in = importdata([pathname filename{i}])
    data = [data data_in];
end

但是,这段代码在导入数据文件较少时还能正常运行,可是选择导入的文件数目(视文件名长短的不同,文件名越长能够导入的文件数目就会越少)一多就出现问题了,会显示以下错误提示:

??? Cell contents reference from a non-cell array object.

Error in ==> data_import at 11
    data_in = importdata([pathname filename{i}])

附件里是M文件和一些TXT文件,运行时选择的TXT文件数目少就能正常,如果选择的多(全选)就会有错误。

不知道是不是uigetfile这个函数本身的限制,如果想将大量的数据一次性导入到内存中去,有没有其他更好的方法?

再次感谢!
4楼2009-09-09 20:27:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zjliu1265

至尊木虫 (正式写手)

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
lchuahp(金币+10,VIP+0):是版本的问题,用了MATLAB2008a后问题解决,谢谢! 9-15 08:57
nono2009(金币+5,VIP+0):谢谢交流!欢迎常来。 9-20 16:59
我试过你的附件内容了,我这里没问题啊(MATLAB2008a)。我选定的是
所有文件,这个是不是例子?
方便的话把你的程序有问题的部分发给我(包括数据文件)
zjliu2001@163.com
5楼2009-09-10 07:38:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

04110241

木虫 (小有名气)

数据导入,记号一下。
6楼2009-09-14 08:49:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lchuahp 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +5 布布和一二 2026-08-10 6/300 2026-08-11 10:15 by 医学老男孩
[基金申请] filecode +9 documentary 2026-08-10 9/450 2026-08-11 10:08 by wk7465
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +15 Lanmanbaby 2026-08-09 23/1150 2026-08-11 09:51 by demonstreets
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +6 Tide man 2026-08-10 6/300 2026-08-11 09:45 by tangmnt
[基金申请] 帮忙看看fileCode +6 wwncly 2026-08-10 11/550 2026-08-11 09:14 by xiaruohan
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +11 archvillain 2026-08-04 13/650 2026-08-10 14:41 by seekfind
[基金申请] 好奇怪的filecode +4 布布和一二 2026-08-08 5/250 2026-08-10 14:20 by 冰心玉壶晴
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +7 a089 2026-08-07 7/350 2026-08-08 18:05 by gltch
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 求各位大神看下 100+6 hpkpkpkp 2026-08-05 33/1650 2026-08-06 14:49 by zhiyanjiang
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
[基金申请] 好消息?这个有何含义??? +8 Tide man 2026-08-05 10/500 2026-08-05 16:14 by xmuxiaoyu
信息提示
请填处理意见