怎样用matlab将含有字母的txt文件中的数字导入matlab中
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
1个回答
展开全部
用load,textread或者importdata文本(txt)格式的文件,只能识别数据,对其中的文本无法读取。
可以使用fscanf或者sscanf的方式读取,
思路为:定义cell矩阵,先全部以字符的方式读入,再将其中的数字转换为数据格式。
代码如下:
m=8;n=3;
data=cell(m,n);%定义cell矩阵,存储文件内容
fid=fopen('test.txt','r');%以只读方式打开文件
for i=1:m
for j=1:n
data{i,j}=fscanf(fid,'%s',[1,1]);%以字符方式读取每个值,遇空格完成每个值的读取
end
end
fclose (fid);
for i=1:m
for j=2:n
data{i,j}=str2double(data{i,j});%将文本格式转为数字格式
end
end
str=cell(m,1);用于存储data的第一列
for i=1:m
str{i}=data{i,1};
end
可以使用fscanf或者sscanf的方式读取,
思路为:定义cell矩阵,先全部以字符的方式读入,再将其中的数字转换为数据格式。
代码如下:
m=8;n=3;
data=cell(m,n);%定义cell矩阵,存储文件内容
fid=fopen('test.txt','r');%以只读方式打开文件
for i=1:m
for j=1:n
data{i,j}=fscanf(fid,'%s',[1,1]);%以字符方式读取每个值,遇空格完成每个值的读取
end
end
fclose (fid);
for i=1:m
for j=2:n
data{i,j}=str2double(data{i,j});%将文本格式转为数字格式
end
end
str=cell(m,1);用于存储data的第一列
for i=1:m
str{i}=data{i,1};
end
追问
这个是从文件第一行读数据吗?
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询