首页 > 其他分享 >.mat文件批量转存为.json文件的方法

.mat文件批量转存为.json文件的方法

时间:2022-09-18 18:57:53浏览次数:97  
标签:文件 jsonlab mat json path 文件批量 转存

记录下.mat文件批量转存为.json文件的方法

matlab本身是没有json解析包的,因此需要加载一个jsonlab工具包,可以用git命令下载

git clone https://github.com/fangq/jsonlab.git
如果不使用git命令可以直接在网上搜一下jsonlab下载方法
之后在matlab加载jsonlab,在命令行输入:
addpath('XXX')
这里的XXX就是你的jsonlab文件夹所在路径,执行命令后可以输入:
help savejson
如果有提示就说明加载jsonlab成功


接下来就是批量转存json文件,这里直接贴上我的代码,需要根据自己情况修改

Data_path = 'D:\t_data\SignalTraces\mat'; %需要批量转存的.mat文件所在文件夹

Save_path = 'D:\t_data\SignalTraces\json';%转存后.json文件所在文件夹
p_mat = dir(Data_path);% dir 函数是用于获取Data_path文件夹中所有文件的信息,
for mat_idx =3 :numel(p_mat) 
  matname = p_mat(mat_idx).name;%获取p_mat(mat_idx)的名称
  matname(end-3:end)=[]; %消除名称中的后缀.mat
  mat_path = strcat(Data_path,'\',p_mat(mat_idx).name); %mat_path为需要转换的.mat文件的路径
  temp = load(mat_path); %加载.mat文件
  save_path = strcat(Save_path,'\',matname,'.json'); %为文件名称添加后缀 .json
  json = savejson('',temp.material,save_path); %转存为.json文件,temp.material是我的.mat文件中的具体数据,也就是需要保存的数据
end

需要注意的是 dir 函数解析的结果的开头两个并不是.mat文件,因此循环从3开始

 

 

标签:文件,jsonlab,mat,json,path,文件批量,转存
From: https://www.cnblogs.com/cjlssg/p/16705453.html

相关文章