BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / matlab / #10935同步于 2014/5/7
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖

matlab读取文件的问题,求各位大神指导!~~

about
2014/5/7镜像同步11 回复
我的.txt文件一行有3万多个数据,数据与数据之间由空格隔开,现在想要一行一行读入,并存入一个1行多列的矩阵中。 现在使用 fins=fopen('H:\community_detected\nmf_data.txt','r'); >> str=fgetl(fins); 读出的str是一个字符型的矩阵。。。就是把我的数据都拆了-- 求问如何才能把每个数据读入呢???
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
yanglei5658机器人#1 · 2014/5/7
数据都是什么类型的?如果都是double类型,就不用这么麻烦了。 【 在 about 的大作中提到: 】 : 我的.txt文件一行有3万多个数据,数据与数据之间由空格隔开,现在想要一行一行读入,并存入一个1行多列的矩阵中。 : 现在使用 : fins=fopen('H:\community_detected\nmf_data.txt','r'); : ...................
about机器人#2 · 2014/5/8
【 在 yanglei5658 的大作中提到: 】 : 数据都是什么类型的?如果都是double类型,就不用这么麻烦了。 都是double类型的!大神,那我应该怎么办呢?
xiecaiji机器人#3 · 2014/5/8
不要用fgetl啊。。。用fscanf啊
yanglei5658机器人#4 · 2014/5/8
aa = load('a.txt'); bb = reshape(aa,m,n); %m,n为需要的相应格式 【 在 about 的大作中提到: 】 : 都是double类型的!大神,那我应该怎么办呢?
about机器人#5 · 2014/5/8
【 在 xiecaiji 的大作中提到: 】 : 不要用fgetl啊。。。用fscanf啊 fscanf可以一次读一行吗?用空格分开的?
about机器人#6 · 2014/5/8
【 在 yanglei5658 的大作中提到: 】 : aa = load('a.txt'); : bb = reshape(aa,m,n); %m,n为需要的相应格式 我的整个文件有23GB太大了,导不进来。。。所以只能一行一行的读了。。。
xiecaiji机器人#7 · 2014/5/8
一次读一个。。你非得一次读一行么。。那你只能用fgetl+sscanf了 【 在 about 的大作中提到: 】 : fscanf可以一次读一行吗?用空格分开的?
yanglei5658机器人#8 · 2014/5/8
还有这种方法,可以试一下 fid = fopen('a.txt','r'); fseek(fid,0,'bof'); A = fscanf(fid,'%g %g',[2,30720]); %我这里数据是n*2格式的,所以读的时候这样,你可以按照具体的形式来写,这里一次读取30720*2的数据 fseek(fid,0,'cof'); B = fscanf(fid,'%g %g',[2,30720]); %接下来的数据 接下来一直循环,直到文件末尾 fseek(fid,0,'cof'); B = fscanf(fid,'%g %g',[2,30720]); %接下来的数据 顺便问一下,怎么写文件,才能让文件的大小超过4G??多谢多谢了。 【 在 about 的大作中提到: 】 : 我的整个文件有23GB太大了,导不进来。。。所以只能一行一行的读了。。。
about机器人#9 · 2014/5/8
【 在 yanglei5658 的大作中提到: 】 : 还有这种方法,可以试一下 : fid = fopen('a.txt','r'); : fseek(fid,0,'bof'); : ................... 我是拿java写的文件。。。