Bootstrap

导出matlab数据字典

导出数据字典

提取matlab,sldd数据字典中的数据,写入到excel中
先将数据字典导出为m文件或者mat文件,随后用如下代码提取想获取变量的相关属性

% 读取工作区的数据,根据变量的后缀确定其数据类型info = whos
numVars = length(info);  
data = cell(numVars, 3);
for i = 1:length(info)
    name = info(i).name
    % 提取第一个_前的子字符串  
    prefix = strtok(name, '_');  
  
    % 检查前缀是否为XX或XX
    if strcmp(prefix, 'XX') 
        eval(['StorageClass =' ,name,'.CoderInfo.CustomStorageClass']);
        eval(['DataType =' ,name,'.DataType']);
    elseif strcmp(prefix, 'XX')  
        eval(['StorageClass =' ,name,'.CoderInfo.CustomStorageClass']);
        eval(['DataType =' ,name,'.DataType']);
    elseif strcmp(prefix, 'XX')  
        eval(['StorageClass =' ,name,'.CoderInfo.CustomStorageClass']);
        eval(['DataType =' ,name,'.DataType']);
    else
        eval(['StorageClass =' ,name,'.CoderInfo.StorageClass']);
        eval(['DataType =' ,name,'.DataType']);
    end
        % 将变量名和类型信息存储到元胞数组中  
    data{i, 1} = name;  
    data{i, 2} = DataType;   
    data{i, 3} = StorageClass;   
    
    
end
% 检查 data 的结构是否正确  
assert(isequal(size(data), [numVars, 3]), 'Data array must have exactly two columns.'); 
% 创建一个表格来存储变量名和类型信息  
T = cell2table(data, 'VariableNames', {'Name', 'Type','StorageClass'});  
  
% 指定要写入的 Excel 文件名和路径(这里使用当前目录和默认文件名)  
filename = 'variable_info4.xlsx';  
  
% 使用 writetable 函数将表格写入 Excel 文件  
writetable(T, filename);  


;