1. 想请教一下用MATLAB提取文本文档里面的特定的十六进制数,然后换成十进制数导入EXCEL表格
1)先读取txt文件
a=textread('c:\a.txt','%s')';%以字符形式打开文件
2) 打开文件后查看读取的矩阵格式
alpha=hex2dec(a)'; %16进制转化为10进制数,存入alpha矩阵
3) 导入excel表格用xlsread,具体用法网上有介绍
2. Matlab批量读取一个文件夹里的txt文件并转换格式存储
path='输入文件夹路径';
data1=[];
data2=[];
forn=1:9
name=fullfile(path,[num2str(n)'.txt']);
fid=fopen(name,'r');%打开文件
fgetl(fid);%跳过第一行
s=fscanf(fid,'%x',[2inf]).';%读取并将16进制转换为10进制整数
s=s./2^24.*1.2;%除以2的24次乘以专1.2
data1=[data1s(:,1)];%第一列合并到属data1
data2=[data2s(:,2)];%第一列合并到data2
fclose(fid);
end
xlswrite('输出路径文件夹文件名1',data1);%写data1
xlswrite('输出路径文件夹文件名2',data2);%写data2
每个文件的数据要一样长哦
3. matlab中如何将十六进制转换为十进制
matlab中将十六进制转换为十进制的方法是:
a=textread('c:a.txt','%s')';%以字符形式打开文件,alpha=hex2dec(a)'; %16进制转化为10进制数,存入alpha矩阵 ,%%%%%%%16进制转10进制。
%%%%%%%%%%%[wenjian_ming,lujing_ming] = uigetfile('c:a.txt','导入数据'),
fid=fopen(strcat(lujing_ming,wenjian_ming),'r'),data=[],while ~feof(fid)
m=fscanf(fid,'%3x',[1 inf]),data=[data;m] %将读出的数据存入data矩阵中。
4. Matlab怎样读取txt文件中的十六进制数
%%%%%%16进制转10进制 转化方法一%%%%%%%%%%%%
a=textread('c:\a.txt','%s')';%以字符形式打开文件
alpha=hex2dec(a)'; %16进制转化为10进制数,存入alpha矩阵
%%%%%%%16进制转10进制 转化方法二%%%%%%%%%%%
[wenjian_ming,lujing_ming] = uigetfile('c:\a.txt','导入数据');
fid=fopen(strcat(lujing_ming,wenjian_ming),'r');
data=[];
while ~feof(fid)
m=fscanf(fid,'%3x',[1 inf]);
data=[data;m]; %将读出的数据存入data矩阵中
end
alpha=data;
%%%%%%%保存文件方法一%%%%%%%%%%%%%%
dlmwrite('c:\b.txt',alpha,'delimiter', ' ') %将得出数据存入新的b.txt文档
%%%%%%%保存文件方法二%%%%%%%%%%%%%%
fid=fopen('c:\d.txt','w');
fprintf(fid,'%d ',alpha');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
alpha2=alpha(1:2:length(alpha)-mod(length(alpha)+1,2)); %将奇数元素提取出来
dlmwrite('c:\c.txt',alpha2,'delimiter', ' ') %将得出数据存入新的c.txt文档
%%%%%%%画图%%%%%%%%%%%%%%
plot(1:length(alpha2),alpha2) %画图
5. 如何用matlab导入十六进制的数
将你的16进制数据保存到txt文件中,打开MATLAB选择workspace->importdata,导入txt文件中的数据,这样会得到cell格式数据(假设名字为textdata),调用函数hex2dec即可,a=hex2dec(textdata),a就是你所想要的数据