我有大型格式化文本文件(200 Mb),其中包含可以轻松读取和保存的数据。格式的周期大约是72行,我想有一个包含72行模板格式的其他文件。有办法做到这一点吗?
理想的方式是
formatstring = fileread(templatefile)
fileToRead = fopen(LargeFile,'r')
while ~feof(fileToRead)
object{i} = textscan(fileToRead,formatstring)
i = i+1
end
模板文件如下所示:
CASE # %16f DATE: %s
AILERON ANGLE STAB ANGLE
%4.2f %4.2f
ALPHA BETA GAMMA
%4.2f %4.2f %4.2f
答案 0 :(得分:0)
如果要读取格式文件并将其转换为有效的格式字符串,请使用:
% read format file
fid = fopen('untitled.txt', 'r');
A = textscan(fid, '%s');
fclose(fid);
% transform into proper format string
A = A{1}(~cellfun('isempty', regexp(A{1}, '%')))
A = [A{:}];
在那种情况下,
>> A
A =
%16f%s%4.2f%4.2f%4.2f%4.2f%4.2f
您可以直接在textscan
循环的while
中使用。