Matlab:存储大量数据

我的csv文件看起来像这样

'have', 1436271616097.0, 33.0, 'noChange', 1436271538982.0 'four', 1436271616130.0, 466.0, 'noChange', 1436271538982.0 'have', 1436271616596.0, 467.0, 'noChange', 1436271538982.0 'four', 1436271617063.0, 100.0, 'noChange', 1436271538982.0 

我试着用[num, txt, raw] = csvread('test.csv')它显示错误,说太多的输出参数。

我试图将我的CSV文件转换为.xlsx,但随后它将数字更改为此,

 have 1.44E+12 33 noChange 1.44E+12 four 1.44E+12 466 noChange 1.44E+12 have 1.44E+12 467 noChange 1.44E+12 four 1.44E+12 100 noChange 1.44E+12 minutes 1.44E+12 666 noChange 1.44E+12 

然后我用[num, txt, raw] = xlsread('test.xls')但问题是,如果我显示eyeT = vpa(eyeT(:,1))它显示相同的浮点值。 我如何使用textscan呢?

这是一个使用textscan提供的csv文件的简单示例。 这给你一个单元格arrays的每一列。

 % reading the data file = fopen('file.csv'); F = textscan(file,'%s %f %f %s %f','Delimiter',','); format long % to show all the digits of the large number celldisp(F) % display the values of all cells 

这是结果:

 F{1}{1} = 'have' F{1}{2} = 'four' F{1}{3} = 'have' F{1}{4} = 'four' F{2} = 1.0e+12 * 1.436271616097000 1.436271616130000 1.436271616596000 1.436271617063000 F{3} = 33 466 467 100 F{4}{1} = 'noChange' F{4}{2} = 'noChange' F{4}{3} = 'noChange' F{4}{4} = 'noChange' F{5} = 1.0e+12 * 1.436271538982000 1.436271538982000 1.436271538982000 1.436271538982000