我正在使用fscanf将数据导入MATLAB。我的文本文件格式如下:
######-10-K-########
######-10-K-########
第一个数字可以在6-9个字符之间变化。现在我正在使用代码:
var = fcanf(fn, %s)
导致var等于一个巨大的字符串。
我读到使用%s会一直持续到检测到空格为止。是否有人在检测到换行符时让它停止?
答案 0 :(得分:0)
Matlab有很多功能,例如你可以使用textscan
。请注意,使用textscan
按如下方式修剪每一行中的所有空格。
f = fopen('your_file_name');
file_data = textscan(f, '%s', 'Delimiter', '');
fclose(f);
fgetl
的另一个例子如下。 fgetl
在每一行中保留缩进和空格。
lineCt = 1;
f = fopen('your_file_name');
tline = fgetl(f);
while ischar(tline)
f_data{lineCt} = tline;
lineCt = lineCt + 1;
tline = fgetl(f);
end
fclose(f);
请注意,它应该是fscanf
,而不是您编写的fcanf
。