Matlab cannot read data from a file which is saved as a text-file from Excel

I am not able to load data from a file which was saved as a text-file from MS Excel. textscan and load return an empty matrix. I tried to retype the data within the file using MS Notebook, to save the file with new name, however without success. If I open a new text-file with MS Notebook and copy-paste there the data from the file saved from Excel, then there is no problem with reading. Why?

2 Comments

are you sure the format (UTF..) of your text-fil from Excel is the right one ? textscan as a "format" parameter i believe
I have checked this again. This happens if you save data from Excel as Unicode Text. If you save the data as Text (Tab delimited) - everything is OK.

Sign in to comment.

Answers (1)

You need to set the input argument, encoding, of fopen. There are many alternatives including "Unicode".

4 Comments

Note: normally textscan() detects UTF encoding. There are, however, a few older Microsoft products which write out UTF-16 files without the required Byte Order Marker (BOM). I have not heard that Excel is among those: it tends to be only very old software such as WordPad.
Though of course sufficiently old MATLAB would not recognize UTF encoding.
I am using Office 2010 and Matlab 2011b
I have tried
fopen(filename,'r','n','windows-1251')
varying encodings, however it has not solved the problem

Sign in to comment.

Asked:

G A
on 1 Jun 2012

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!