matlab如何读取含有文本的TXT数据文件并存入数组??

我有如下格式的数据文件:5jhgjyjygjhkjhjhkjhyuyuyuytuytuytuytuytuytfhjhgjyjygjhkjhjhkjhkjhkjh56562... 我有如下格式的数据文件:
5 jhg jy jyg jh kjh jh kjh
yuyu yu yt uyt uyt uyt uyt uyt
fh jhg jy jyg jh kjh jh kjh
kjh kjh 56 56 21 654 54 354
jh jh 54 6456 654 46 5 21
kjh kjh 12 56 54 -562 21 21
kjh kjh 321 412 654 54 4 23
kjh kjh 646 545 1254 54 21 1
kjh kjh 4 545 632 1 38 32
kjh kjh 21 3 -15 6554 55 63
kjh kjh 21 21 1 13107 3 94
kjh kjh 5 21 2 19660 45 125
kjh kjh 1 3 3 26213 52423 156
kjh kjh -639 -15 4 2 0 187
kjh kjh -319 2 21 21 21 218
kjh kjh 1 2 21 23 25 249
kjh kjh 321 321 21 23 25 280
请问如何才能读取该文件4到17行,3到8列的数据,并存入一个数组A中,我的数据文件为TXT文档,谢谢!!
展开
 我来答
Gingeer
2010-02-24 · TA获得超过629个赞
知道小有建树答主
回答量:173
采纳率:100%
帮助的人:74.5万
展开全部
clc;clear;close all;

hang=[4 17];%4行到17行。这样你也可以变化
lie=[3 8];%3到8列。这样你也可以变化

[FileName,PathName] = uigetfile('*.txt','Select the Txt files');%弹出对话框,然后选择你要处理的文件
fid=fopen([PathName FileName]);
temp=textscan(fid,'%s %s %s %s %s %s %s %s');
fclose(fid);
for i=1:(hang(2)-hang(1)+1)
for j=1:(lie(2)-lie(1)+1)
b=temp{j+lie(1)-1}{i+hang(1)-1};
A(i,j)=str2num(b);
end
end
杨好巨蟹座
2015-10-07 · TA获得超过5万个赞
知道大有可为答主
回答量:6197
采纳率:80%
帮助的人:1311万
展开全部
先打开文件
[filename,filepath]=uigetfile('*.txt','Select Input file');
file = [filepath filename];
fid = fopen(file,'rt');
if fid == -1
('Error opening the file')
end
%%读取文件
while 1

nextline = fgetl(fid); %读第一行

if ~isstr(nextline), break, end %读到最后跳出

disp(nextline);%这行可以不要
a = sscanf(nextline, ' %f %f ');%读取数据,根据你自己的需要改
end
end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
123789liugreat
2015-08-01 · TA获得超过752个赞
知道答主
回答量:239
采纳率:0%
帮助的人:27.4万
展开全部
Import。。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式