Matlab:如何在 Matlab 中保存 num2str(i).mat?

Matlab: How to save num2str(i).mat in matlab?

假设我有一个 for 循环,并希望在每次迭代时使用迭代名称保存一个 mat 文件。我做了如下但它不起作用。

clc;
clear;
for i=1:3
    filename=num2str(i);
    save(filename,'.mat')
end

save 的第一个输入需要是一个字符串,您要将 两个 个输入传递给 savefilename'.mat'). save 无法自动将您的文件名与您提供的 .mat 扩展名组合起来,而是最终寻找一个名为 '.mat' 的变量,这显然会导致错误。

您想将这两个字符串连接成 一个 字符串(使用 []strcat)并将其作为第一个输入传递给 save.

save([filename, '.mat'])

或者,您 可以 只提供 filename 因为假设 filename 还没有 .mat 扩展名将自动附加一个扩展。就个人而言,我不是特别喜欢这种方法,因为我在文件名中使用 .,但如果你不这样做,这可能会起作用。

save(filename)