Cell Array Indexing of HEX values

5 vues (au cours des 30 derniers jours)
tinkyminky93
tinkyminky93 le 2 Juin 2022
Modifié(e) : Voss le 2 Juin 2022
Hello,
I have a HEX cell array and I use importdata function to import them.
a = importdata('C:\User\Desktop\text.txt');
It gives me 2x1 cell '0F 04 0A 0E 1E 2F' and '3E 2A 1F 03 05 0A'
For example, I want to take 0E from there, how can I index this element? Thank you.

Réponse acceptée

Voss
Voss le 2 Juin 2022
Modifié(e) : Voss le 2 Juin 2022
a = {'0F 04 0A 0E 1E 2F', '3E 2A 1F 03 05 0A'};
C = squeeze(split(a,' '))
C = 2×6 cell array
{'0F'} {'04'} {'0A'} {'0E'} {'1E'} {'2F'} {'3E'} {'2A'} {'1F'} {'03'} {'05'} {'0A'}
C{1,4}
ans = '0E'
  2 commentaires
tinkyminky93
tinkyminky93 le 2 Juin 2022
Modifié(e) : tinkyminky93 le 2 Juin 2022
Can we write like C(1, 4:5) or something like that for cell arrays?
Voss
Voss le 2 Juin 2022
Modifié(e) : Voss le 2 Juin 2022
Try it and see:
a = {'0F 04 0A 0E 1E 2F', '3E 2A 1F 03 05 0A'};
C = squeeze(split(a,' '));
C(1, 4:5)
ans = 1×2 cell array
{'0E'} {'1E'}
Seems to work.
Note that subscripting a cell array with parentheses ( ) like that gives you another cell array. To get the contents of the cells instead, use braces { }:
C{1, 4:5}
ans = '0E'
ans = '1E'
And you may want to concatenate those 2 outputs together, using square brackets [ ]:
[C{1, 4:5}]
ans = '0E1E'
Another example:
[C{2,:}]
ans = '3E2A1F03050A'

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Cell Arrays dans Help Center et File Exchange

Produits


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by