How to read 16-bit text with Matlab

15 次查看(过去 30 天)
I have an Agilent 34970A data logger with their BenchLink software. This puts out a .csv file that Excel reads with no trouble. But Matlab cannot import it because it's 16 bit text. The first two bytes are 0xFF 0xFE, then after that every text byte is followed by a NULL (0x00). I wrote a function to read it, but I was hoping for the ability to read it directly, without having to programmatically skip the NULLs.

采纳的回答

Walter Roberson
Walter Roberson 2016-3-1
MATLAB does not handle UTF-16LE files. You might wish to use the source code I posted in http://uk.mathworks.com/matlabcentral/answers/267176-read-and-seperate-csv-data#answer_209938 which reads csv files from any of the UTF-8 / UTF-16 / UTF-32 encodings
  9 个评论
keldstefan
keldstefan 2022-5-20
Very nice Walter ;)
Does anybody know how to deactivate the warning?
"Warning: The encoding 'XXXXXXX' is not supported.
See the documentation for FOPEN."
I am reading several hundreds of these files, I'd like to remove this output from the console...
Les Beckham
Les Beckham 2022-5-20
编辑:Les Beckham 2022-5-20
To disable the warning, issue the following command after you receive that warning:
[msg, id] = lastwarn;
Then, disable the warning as follows:
warning('off', id)

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Low-Level File I/O 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by