MATLAB: Is MATLAB unable to read an ASCII file containing a large amount of data in a single line using the CSVREAD function

csvreadfilehangsi/olineslongMATLABmemorytime

Why is MATLAB unable to read an ASCII file containing a large amount of data in a single line using the CSVREAD function?

Best Answer

This bug has been fixed in Release 14 Service Pack 2 (R14SP2). For previous releases, please read below for any possible workarounds:
This has been verified as a bug in MATLAB in the way that the CSVREAD function handles large data files.
Currently, as a workaround, try the following code:
fid = fopen('filename');
a = textscan(fid,'%n','delimiter',',');
This reads the file rather quickly and creates an array of doubles. The difference is that when CVSREAD reads the same file, it tries to have a format string with thousands of fields, one for each line of data.
Related Question