heqiangyong 发表于 2009-6-4 10:33

怎么读入一个文件夹得多组数据?谢谢!

现想把一个文件中的所有文本文件全部读入,但不知道怎么读?疑问中。。。。希望知道的帮助下!谢谢

sogooda 发表于 2009-6-4 13:27

用dir命令得到目录下所有txt文档的名字,然后在load装载或用其他命令读入。

heqiangyong 发表于 2009-6-4 14:48

回复 沙发 sogooda 的帖子

哦,谢谢,我先试试!

heqiangyong 发表于 2009-6-5 10:25

回复 沙发 sogooda 的帖子

>> x=dir('e:\数据1\*.txt');
>> len=length(x);
>> data=cell(1,len);
>> for i=1:len
data{i}=load(x(i).name)
end
??? Error using ==> load
Unable to read file 1124.txt: No such file or directory.


用这个程序试了下,文件数据1中含1124.txt,怎么还出现这个错误啊?对了,顺便说下,数据1中各个文本文件的数据的长度是不相等的!

friendchj 发表于 2009-6-5 12:35

把data{i}=load(x(i).name)
改成
data{i}=load(['e:\数据1\',x(i).name])

PS:查看一下出错时x(i).name的内容,就知道错在何处了。

heqiangyong 发表于 2009-6-5 15:52

回复 5楼 friendchj 的帖子

恩,谢谢!

heqiangyong 发表于 2009-6-5 21:45

回复 5楼 friendchj 的帖子

做出来了,但为什么读出的数据不是按顺序出来的呢:lol

ChaChing 发表于 2009-6-5 22:16

原帖由 heqiangyong 于 2009-6-5 21:45 发表
做出来了,但为什么读出的数据不是按顺序出来的呢:lol
个人水平专业有限, 建议楼主说清楚些!

heqiangyong 发表于 2009-6-6 10:01

回复 8楼 ChaChing 的帖子

data =

Columns 1 through 6

                       

Columns 7 through 11

                   

Column 12

   
这是我运行后输出的结果,但我想输出的结果的按小道大排列,能实现吗?谢谢您的一直帮忙!

或者读出来的数据再怎么进行字节大小排列呢?

[ 本帖最后由 ChaChing 于 2009-6-6 14:23 编辑 ]

heqiangyong 发表于 2009-6-6 13:10

我知道我错在哪了?原来的文本文件的名称是1 2 4 8 16 32 64 128 256 512 1024 2048.matlab读出来的顺序是按1开始的,只要数字的首位是1都先读,然后再开始读2为首字的,就是1 1024 128 16.。。!后来我改为了1 2 3 4 5 6 7 8 9 90 91 92.读出了我所要的结果
页: [1]
查看完整版本: 怎么读入一个文件夹得多组数据?谢谢!