求教matlaB读取txt指定行的方法!文件头几行和末几行是无用信息,中段行才是我想读取的数据,

索性把整个问题请教一下各位吧,我有一大堆txt文件数据需要读取,而每个文件的开头几行和结尾几行是不需要的一些文字信息,总行数是已知的,中间行的数据就作为矩阵读入,求问如何... 索性把整个问题请教一下各位吧,我有一大堆txt文件数据需要读取,而每个文件的开头几行和结尾几行是不需要的一些文字信息,总行数是已知的,中间行的数据就作为矩阵读入,求问如何一次性把这么多文件读入呢?打个比方,我现在有10000个文件名为"shuju_1"、"shuju_2"、"shuju_3"这种文件名规律的txt文件,然后我想批量的读取这10000个文件里第5行到第600行的数据,拜谢各位! 展开
 我来答
ruifengcao
2012-11-24 · TA获得超过9489个赞
知道大有可为答主
回答量:3579
采纳率:33%
帮助的人:2035万
展开全部
使用textread函数进行读取,通过
'endofline' - end of line character (default determined from file)
'expchars' - exponent characters (default is 'eEdD')
这两个参数控制读取的行数。

大量的文件通过dir函数来读取文件名,也可以通过循环构造文件名!
追问
请问'endofline' 、 'expchars‘怎么用?我之前看textread的help文件时就看到过这两个,开头几行倒可以通过headerlines跳过,怎么把末几行忽略就搞不定了
追答
我刚看了一下,这个函数是没办法处理末行的。
你最好使用fread函数来处理这个东西!
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ttnsdcn
2012-11-24 · TA获得超过124个赞
知道答主
回答量:133
采纳率:0%
帮助的人:98.2万
展开全部
我的方法不一定最好,但是很容易操作
setp 1: 在计算机的cmd.exe
D:\matlab>dir *.txt >>a.log 把你的文件写到a.log

让后把a.log的内容 copy到 Excel内
C列的公式
:="Z{"&B3&"}=fopen('"&A3&"');"
Alie B列 C列
文件名 序号 读取文件
shuju_1.txt 1 Z{1}=importdata('shuju_1.txt');
shuju_2.txt 2 Z{2}=importdata('shuju_2.txt');
shuju_3.txt 3 Z{3}=importdata('shuju_3.txt');
shuju_4.txt 4 Z{4}=importdata('shuju_4.txt');
shuju_5.txt 5 Z{5}=importdata('shuju_5.txt');
shuju_6.txt 6 Z{6}=importdata('shuju_6.txt');
shuju_7.txt 7 Z{7}=importdata('shuju_7.txt');

让后copy C列到 matlab中执行就行了
所以数据到保存到Z中
在怎么操作都简单了;
譬如输出
for i=1:n
Z{i}
end;
---------------------------------
>> for i=1:2
Z{i}
end
ans =
1 2
ans =
2 3 5
>>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式