【发布时间】:2015-02-21 05:17:41
【问题描述】:
我正在尝试将模型保存在最旧的 MATLAB 版本中,如下所示 我查找每个文件夹和子文件夹以找到任何 .mdl 或 .slx 以将其保存为 2007b 版本
我的问题是:
- 如果我只是寻找一个扩展名,但我想知道它会起作用 在每个 .mdl 和 .slx 上执行此操作。
- save_system 占用太多 时间
你知道我怎样才能得到所有的 .mdl 和 .slx 吗?有没有优化的保存方式?
谢谢
rootPath = fullfile('M:\script\ytop','tables');
files = dir(rootPath );
for ii = 3:numel(files)
x = fullfile(rootPath ,files(ii).name);
cd(x);
mdl = { dir('*.mdl'),dir('*.slx')}; % here it works if only I set dir('*.mdl')
for jj = 1:numel(mdl)
load_system(mdl(jj).name);
save_system(mdl(jj).name,mdl(jj).name, 'SaveAsVersion','R2007b');
end
end
【问题讨论】:
-
'R2017b'?尝试使用“R2007b”
-
哦,对不起,:) 这只是一个错误(当然我用的是 2007b)
-
不知道有没有更好的功能。我有点怀疑,因为 MATLAB 实际上已经编写了一个函数,应该以一种很好的方式做到这一点。但是,我遇到了类似的问题(但对于 .mat 文件)。问题是网络连接非常慢。文件大吗?有很多文件吗?您是否尝试过在装有 matlab 的机器和
M驱动器之间传输文件?如果你这样做了(没有加载或保存文件),你可以看到连接有多快。用相同的文件试试这个并比较这个时间是否成比例。 -
@patrick,我还有第二个问题,怎么说:我想加载并保存所有 .mdl 和 .slx ?