.csv file hex to dec converting(hex2dec is not working)

hi. i'm converting .csv file (hex) to .csv file (dec).
if a.csv file is hexadecimal
a.csv file :
['eb','80','80' ; 'eb','80','80' ...]
A = hex2dec('a.csv')
error : Error using hex2dec
Hexadecimal text must consist of characters 0-9 and A-F.
always error occurs.

 Accepted Answer

You cannot apply hex2dec to a file name . You need to read the hex data out of the file first and convert that if you are going to use hex2dec .
Could you confirm that the csv file contains both commas and semi-colons ? Are the semi-colons after every third entry exactly? Or is the actual input like
'eb', '80', '80'
'eb', '80', '80'
with no '[' and no semi-colon ?
Is there the same number on every line? Is there indeed multiple lines?

2 Comments

and i can add (') if it is important, i attempted readtable() but there is NaN
in_filename = 'outfile_ycbcr.csv';
out_filename = 'ycbcr_dec.csv';
[fid, msg] = fopen(in_filename, 'r');
if fid < 0
error('failed to open file "%s" because "%s"', in_filename, msg);
end
data_dec = cell2mat(textscan(fid, '%x, %x, %x'));
fclose(fid);
writematrix(data_dec, out_filename);

Sign in to comment.

More Answers (1)

You cannot convert like that.
  1. Read the csv file data using csvread or readtable.
  2. Then on the data use the function hex2dec
  3. Then write converted data into csv file using write2table

Community Treasure Hunt

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

Start Hunting!