我在file.txt
中有一些字符串,我想将所有字符串添加到一个单元格数组中。
但问题是文件中有许多字符串是未知的,我不想计数。我想每次读取文件中的1个字符串(从上到下)时,我都会将其添加到单元格数组中。
示例:
**file.txt**
ABC
DEFG
HI
JKLMNO
--> cellarray(1) = 'ABC', cellarray(2) = 'DEFG', cellarray(3) = 'HI', cellarray(4) = 'JKLMNO'
我使用的是MATLAB R2014b。我该怎么做?
您可以使用textscan
将整个文件加载到字符串的单元格数组中。结果将是一个1 x 1
单元格数组,因为您只有一个格式说明符(%s
),但该单元格数组将包含文件中所有行的另一个单元格数组。
fid = fopen('file.txt', 'rt');
data = textscan(fid, '%s', 'delimiter', 'rn');
C = data{1};
%// 'ABC'
%// 'DEFG'
%// 'HI'
%// 'JKLMNO'
您可以使用MATLAB(文档)中的fgets
函数从文本文件中获取一行