2 magicouse magicouse 于 2014.10.28 17:16 提问

matlab怎样实现读取指定行?

比如说我有个txt里有100w行,我想读取第30w行,应该如何实现呢?
不要循环按行读取的方法

1个回答

lzp_lrp
lzp_lrp   Ds   Rxr 2015.06.08 08:55

matlab中如何读取TXT数据文件中指定行的数据?

下面这个函数是取filein中的第line行写入fileout中的程序,如果想实现取特定几行,只要稍微修改一下就可以。

function dataout=dataread(filein,fileout,line)

fidin=fopen(filein,'r');

fidout=fopen(fileout,'w');

nline=0;

while ~feof(fidin) % 判断是否为文件末尾

tline=fgetl(fidin); % 从文件读行

nline=nline+1;

if nline==line

fprintf(fidout,'%s\n',tline);

dataout=tline;

end

end

fclose(fidin);

fclose(fidout);

%%%%%%%%%%%%%%%%%%%%%%%%%%

调用格式:dataout=dataread(filein,fileout,line)

如果你的txt文件数据是矩阵形式的,而没有其它的文字,用下面的程序就可以读任意行任意列的数据

a=textread('ll.txt');

t=a(1:43,4:10);

1:43是1到43行,4:10是4到10列的数据,当然也可以只读一个数据,如果你的matlab没有textread函数,直接从mathworks网站下载就行。

Csdn user default icon
上传中...
上传图片
插入图片