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就是你所想要的數據