加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

[MATLAB]将mat格式文件批量转换为二进制数据文件

(2017-03-21 17:23:43)
标签:

matlab

分类: 信号处理


  
%功能:批量读取文件夹内mat文件,并转换为bin格式。matlab版本:R2015b
  
clear;clc;
  
start_path = '';
  
dialog_title = '打开AD数据文件夹';
  
folder_name = uigetdir(start_path,dialog_title);
  
cd(folder_name);
  
listing = dir(folder_name);
  
for ilisting = 1:numel(listing)
  
    if listing(ilisting).isdir, continue, end %忽略目录文件
 10 
    [pathstr,name,ext] = fileparts(listing(ilisting).name);
 11 
    if ~strcmp(ext,'.mat'), continue, end; %忽略不符合的文件类型
 12 
    binFlieName = strcat(name,'.bin'); %生成二进制文件名
 13 
    fileID = fopen(binFlieName,'wb');
 14 
    data = load(listing(ilisting).name); %data为struct类型
 15 
    fieldNames = fieldnames(data);
 16 
    eval(['A = data.',fieldNames{1},';']); %执行A = data.fieldnames(A);
 17 
    machineformat = 'native';
 18 
    fwrite(fileID, A, 'double', 0, machineformat);
 19 
    fclose(fileID);
 20 
end

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有