您的位置:首页 > 编程语言 > MATLAB

matlab从文本txt文件中读入十六进制数据到矩阵并转换成十进制

2014-11-19 19:39 1066 查看
用load,textread或者importdata文本(txt)格式的文件,只能识别数据,对其中的文本无法读取。

可以使用fscanf或者sscanf的方式读取,

思路为:定义cell矩阵,先全部以字符的方式读入,再将其中的数字转换为数据格式。

代码如下:

m=8;n=3;

data=cell(m,n);%定义cell矩阵,存储文件内容

fid=fopen('test.txt','r');%以只读方式打开文件

for i=1:m

for j=1:n

data{i,j}=fscanf(fid,'%s',[1,1]);%以字符方式读取每个值,遇空格完成每个值的读取

end

end

fclose (fid);

for i=1:m

for j=2:n

data{i,j}=str2double(data{i,j});%将文本格式转为数字格式

end

end

str=cell(m,1);用于存储data的第一列

for i=1:m

str{i}=data{i,1};

end

=======================================================================

x = '01FF';

x1 = hex2dec(x);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: