导入log(或txt)文件
先上代码:
matlab
clc;
clear;
%数据导入
file1=fullfile('文件路径', 'test1.log'); % 导入文件'test1.log'
f1=fopen(file1);
dt1=textscan(f1,'%s'); %采用textscan 读取数据
%得到的dt1是元胞数组格式
比如:有如下内容文件
导入后存在数据变量dt1中的形式如下图所示:
提取数据或其他信息
通过上面的导入,可以通过遍历的方式去提取自己想要的内容。一个提取数据比较偷懒的方式,就是在生成数据文件或内容文件之前,在需要提取的数据之前,设置好一个特别的字符,这样子,在遍历时,一旦遇到这样一个字符,就将后面的数据或信息提取单独保存即可。
如下示例:
matlab
index1=0;%设置的特别字符 按照自己文件来
x1=[];y1=[];%用来存储提取的数据或信息
i=1;
while(i<=length(dt1{1,1})) %这里涉及元胞数据结构的操作
symbal=dt1{1,1}(i,1);%对照上面的存储 就是取了一个单元格的内容
%disp(symbal)
if(strcmp(cell2mat(symbal),num2str(index1))) %字符比较 如果相等 则进入if循环
x1=[x1 index1];%
y1=[y1 str2num(cell2mat(dt1{1,1}(i+1,1)))];%提取数据 + 格式转换
i=i+2;%相应的跳过这些提取的信息 按照自己文件来
index1=index1+1;
%disp(index)
continue;
end
i=i+1;
end
fclose(f1);