我有一堆.txt
具有以下格式的文件:
|file | time | color | tags |
|1 | 1:10 | red | ok, correct|
|2 | 2:20 | blue | bad |
|3 | 1:20 | yellow | sometag |
第一行指定列名。随后的行是“数据库”条目。
我想读入这个文件,并将所有信息放入一个 Matlab 结构中。我想知道最有效的方法是什么。
textread
单独处理'delimiter', '\n'
每一行?textread
'delimiter', '|'
必须确定哪些条目属于一起?fread
逐行?
我喜欢 with 的便利性textread
,但是为每一列(带有循环)'delimiter', '\n'
取出单独的条目是相当痛苦的。for
或者,我可以使用以下方法拆分每一行regexp
:
regexp(file{1}, '\|', 'split')
但这只会拆分每一行,并且不会处理空格(为此我需要再次regexp
调用才能摆脱)。
那么最直接(甚至可能是最有效)的方法是什么?
EDIT1我想构建一个结构db = struct('file', [], 'time', [], 'color', [], 'tags')
,一旦我读入第一行就很容易创建。