dlmread fails to import completely numeric file ?
Afficher commentaires plus anciens
Hi,
I use dlmread to import data form xls files and it works fine all the time except that suddenly it throws error to read one particular file of the same format. The error is :-
Error using dlmread (line 138) Mismatch between file and format string. Trouble reading 'Numeric' field from file (row number 1, field number 1) ==> ÐÏࡱá
I have checked multiple times and the file is completely numeric. I do not understand why this has to happen with only this file. I have been using this script since 3 months without issues on various occasions.
The reading code is :
files=char(fileloc(b));
dev=dlmread(files);
f_efficiency(dev,b);
where files contain the path to the selected file in string format.
I have attached the file causing the trouble. Any help is appreciated.
Best Regards, Vittal
2 commentaires
José-Luis
le 8 Août 2016
How did you check? In Excel just because something looks like number does not mean it actually is.
dpb
le 8 Août 2016
And to check on Jose-Luis' hypothesis, use xlsread on the .xls file and return the numeric and the optional text outputs..."almost guar-on-teed" that the text output will include the offending portion in the file. If so, somehow a cell or multiple cells formatting in the spreadsheet has gotten set -- or perhaps there's an unintended leading single quote (') in the cell content that automagically turns into text...
Réponse acceptée
Plus de réponses (1)
S. McBride
le 23 Août 2016
0 votes
The file you attached is a binary XLS file. DLMREAD acts on ASCII files. Here's the beginning of your file as seen by Notepad:
ÐÏࡱá > þÿ N þÿÿÿ þÿÿÿ M ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
I am seeing very similar behavior, however, with a file that looks fine in Notepad. I had just upgraded the PC from R2008a to R2014, and don't know if that is part of the issue. The file was tab-delimited when it didn't work. The file was changed to be comma-delimited, and then it seemed to work.
1 commentaire
S. McBride
le 23 Août 2016
Update: It looks like my tab-delimited file may have been Unicode rather than ASCII. The working CSV file is half the size of the tab-delimited file that didn't work.
Catégories
En savoir plus sur Spreadsheets dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!