MATLAB textscan headerlines(MATLAB textscan header

2019-08-05 16:43发布

当我尝试使用headerlinestextscan跳过文本文件的第一行,我所有的数据单元被存储为空。

fid = fopen('RYGB.txt');
A = textscan(fid, '%s %s %s %f', 'HeaderLines', '1'); 
fclose(fid);

此代码给

1x4 Cell
[] [] [] []

如果没有headerlines一部分,而不需要在文本文件中要跳过第一线,数据是没有问题的读入。 它创建了一个1x4 cell包含所有的在列文本文件中的信息数据的单元格。

我能做些什么,以跳过文本文件的第一行,并在正常读取数据?

谢谢

Answer 1:

我觉得你的问题是,您所指定的字符串 ,而不是一个数值HeaderLines 。 字符'1'将被解释为它的ASCII值,0X31(49进制),所以第49行被跳过。 您的文件可能包含49条线以下,所以一切都结束了被丢弃。 这就是为什么你要空单元格。

该解决方案是更换'1'1即,删除引号),如下所示:

A = textscan(fid, '%s %s %s %f', 'HeaderLines', 1);

这应该做的伎俩。



文章来源: MATLAB textscan headerlines