Borrar filtros
Borrar filtros

hex2dec for an character array

5 visualizaciones (últimos 30 días)
Shrinish Donde
Shrinish Donde el 4 de Oct. de 2022
Comentada: Walter Roberson el 5 de Oct. de 2022
Hello
I have an array of hex numbers which I want to convert to decimal. These is an array converted from a table.
For eg.var = readtable()
var = table2array(var)
Now when I try to use hex2dec on this var it does not work. It gives the error message:
"Error using hex2dec
Hexadecimal text must consist of characters 0-9 and A-F."
When I put a quotation for each individual number inside the var, I can get it to work. But since this is an array with thousands of numbers, I cannot do it this way. I need to use hex2dec(var(:,1)) on the entire array. is there any way I can do it ?
  5 comentarios
David Hill
David Hill el 4 de Oct. de 2022
Attach your data.
Walter Roberson
Walter Roberson el 5 de Oct. de 2022
cs = cellstr(var);
ca = vertcat(cs{:});
u = unique(ca(:))
Look carefully at the output of u for any characters other than A B C D E F a b c d e f 0 1 2 3 4 5 6 7 8 9 . In particular look for space in the output. hex2dec() can handle leading and trailing spaces, but not embedded spaces.
For example if one of the strings as DE AD BE EF then hex2dec() would not be able to handle the space.
If you have an array with embedded spaces, then do you want each element to become an output value, or should the elements be grouped together? For example you might want to group BE EF together to get hex BEEF (a 16 bit integer) ?

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Digital Input and Output en Help Center y File Exchange.

Productos


Versión

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by