使用 MATLAB 读取含中文的 txt 格式指定行列内容

问题:对于以下 .txt 文件,想要去除红色区域的内容,可用如下方法

image-20210821162705920

解决:

1、先得到文件总行数 row

%读取文件行数

cd('文件路径');
fo=fopen('文件名称');
row=0;

while ~feof(fo) % 是否读取到文件结尾

[~]=fgets(fo); %

row=row+1; % 行数累加

end

fclose(fo); 

row

2、使用 textscan 获取指定行数据

fid = fopen(temp1(i).name);
lines = textscan(fid, '%s %[^\n]', row - 3, 'Headerlines', 3); % 从第三行开始,向下 row - 3 行,得到的 lines 为 cell 类型的数据

3、将 cell 类型数据转换为数值型

% 第一列为日期,不需要,只需要后面数据内容
temp = str2num(char(lines{2}));

temp 即为所需要的内容

posted @ 2021-08-21 16:34  sgKurisu  阅读(3584)  评论(0)    收藏  举报