MATLAB: Is it that DLMREAD in MATLAB 6.0 (R12) fails to read data correctly when there are empty fields

dlmreademptyfieldsMATLAB

DLMREAD of numeric data with tab delimited fields in MATLAB 6.0 does not seem to be working as it did in previous versions of MATLAB if some of the fields are empty.
For example if I have a tab delimited text file called numbers.txt with the following data:
0.16340.6536291.342
0.16340.817291.506
1.3072291.506
1.4706291.669
2.1242291.669
2.2876291.832
3.5948291.832
3.7582291.996
4.4118291.996
4.5752291.832
and I invoke the command:
>> RESULT=DLMREAD('numbers.txt','\t')
RESULT =
0.1634 0.6536 291.3420
0.1634 0.8170 291.5060
1.3072 291.5060 0
1.4706 291.6690 0
2.1242 291.6690 0
2.2876 291.8320 0
3.5948 291.8320 0
3.7582 291.9960 0
4.4118 291.9960 0
4.5752 291.8320 0
This is incorrect!
But if I do the same thing in MATLAB 5.3.1, I get the correct result:
+ RESULT=DLMREAD('numbers.txt','\t')
RESULT =
0.1634 0.6536 291.3420
0.1634 0.8170 291.5060
0 1.3072 291.5060
0 1.4706 291.6690
0 2.1242 291.6690
0 2.2876 291.8320
0 3.5948 291.8320
0 3.7582 291.9960
0 4.4118 291.9960
0 4.5752 291.8320

Best Answer

This bug has been fixed for Release 14 (R14). For previous releases, please read below for any possible workarounds:
As a workaround for previous releases, please make sure that empty fields are replaced with a number as the placeholder. This will ensure that DLMREAD reads the data correctly.