La descrizione del problema non è molto chiara, sarebbe utile avere un esempio (anche parziale) del file di testo.
Nell'ipotesi che il file di testo sia costituito da una sola riga contenente 104 caratteri (corrispondenti a 13 numeri in formato esadecimale a 32 bit) come quella che segue:
32FE3DF6266E5379166D75530B6143B019869F411CBB12AE0730631E23232B9D0D7B59A016ECD27522BFAA8F0F0241AB114FC5D9
lo script in calce:
[*] legge tale stringa dal file di input "
hexdatafile.txt"
[*] estrae, in loop, 8 caratteri alla volta (un numero esadecimale)
[*] assegna le stringhe agli elementi di un cellarray
%
% Apertura file di input
%
fp=fopen('hexdatafile.txt','r');
if(fp == -1)
error('Input file not found')
end
%
% Lettura del file: la stringa di testo viene memorizzata nella variabile
% "read_str"
%
read_str=fscanf(fp,'%s');
%
% Chiusura del file di input
%
fclose(fp);
%
% Identificazione della quantità di numeri esadecimali: numero dei
% caratteri della stringa / 8 (32 bit ==> 8 caratteri)
%
[r,c]=size(read_str);
n_hex=c/8;
%
% Loop per la separazione dei valori esadecimali: ad ogni iterazione 8
% caratteri vengono assegnati ad un elemento del cellarray "hexstr"
%
%
for i=1:c/8
tok=i+7*(i-1);
hex_str{i}=read_str(tok:tok+7);
end
%
% Visualizzazione degli output
%
read_str
hex_str
Hope this helps.