有一个点数据文件,格式如下
height =10,width=15696,num=156960
1796.61, -853.93, 0.00, 0.00, 0.00, 0.00
1801.61, -853.93, 0.00, 0.00, 0.00, 0.00
1806.61, -853.93, 0.00, 0.00, 0.00, 0.00
1811.61, -853.93, 0.00, 0.00, 0.00, 0.00
1816.61, -853.93, 0.00, 0.00, 0.00, 0.00
1821.61, -853.93, 0.00, 0.00, 0.00, 0.00
说明:
(1)第一行为文件头,描述了后面的点数据(如height)。参数格式为:key=value 等号左右可能都有空格。
(2)第二行之后的全部为点数据
%
filename='D:\CodeRepo\dotnet\FileXml\FileXml\data\S4-Model.3d';
delimiterIn = ',';
headerlinesIn = 1;
t1=clock;
% 使用importdata导入数据自动将数据分为textdata和data部分。
% textdata用来存放头部信息
% data用来存储矩阵数据
idata = importdata(filename,delimiterIn,headerlinesIn);
[datarow datacol]=size(idata.data);
% 使用正则表达式对第一行参数字符串进行分析。
% 参数格式如:参数名1=参数值1;
% 多个参数之间可以用逗号分隔
pattern='\s*([^\s,]+)\s*=\s*([^\s,]+)[\s]*';
match =regexpi(idata.textdata,pattern,'tokens');
if (isempty(match{1}))
disp('参数行不符合规定格式')
else
[r,

本文档介绍如何使用Matlab读取具有特定格式的文本数据文件。文件包含点数据,第一行是文件头,描述点数据的关键信息,如height。从第二行开始则是具体的点数据记录。
最低0.47元/天 解锁文章
7767

被折叠的 条评论
为什么被折叠?



