matlab怎么把16进制的数变成10进制的

一个txt文本,都是16进制的数比如,变成10进制的矩阵,
2025-03-04 03:51:06
推荐回答(1个)
回答1:

fn = 'DATA16.TXT';            % 换成自己的文本文件名
P = TextRead(fn,'%s');
rs = size(P);
R = zeros(rs(1),length(P{1})/2);
for r = 1:rs(1)
    ss = P{r};
    for k = 1:length(ss)/2
        pp = fix(k/2)+1;
        R(r,k) = hex2dec(ss(pp:pp+1));
    end;
end;
R

例子:

%DATA16.txt

0000000000000000

FFFFFFFFFFFFFFFF

234256FACD5678FC

FACD454D456FACD4

23F4F56A3A4CC567


运行后结果:

R =


     0     0     0     0     0     0     0     0

   255   255   255   255   255   255   255   255

    35    52    52    66    66    37    37    86

   250   172   172   205   205   212   212    69

    35    63    63   244   244    79    79   245