MATLAB连接字符串变量

时间:2018-04-20 02:05:18

标签: string matlab

我知道strjoin可以用来连接字符串,比如'a''b'但是如果其中一个字符串是变量,比如

a=strcat('file',string(i),'.mat')

我希望:

strjoin({'rm',a})

当我尝试这个时,MATLAB会抛出一个错误,这让我发疯了!

Error using strjoin (line 53) First input must be a string array or cell array of character vectors

1 个答案:

答案 0 :(得分:2)

您使用的是哪个版本的MATLAB?错误是什么? strjoin的第一个输入需要是一个单元格数组。尝试strjoin({' rm'},a)。

此外,在17a之前,请执行:

a = strcat('file', num2str(i),'.mat')

在> = 17a中执行:

a = "file" + i + ".mat";

以下是效果比较:

function profFunc

    tic;
    for i = 1:1E5
        a = strcat('file', num2str(i),'.mat');
    end
    toc;

    tic;
    for i = 1:1E5
        a = "file" + i + ".mat";
    end
    toc;
end

>> profFunc
Elapsed time is 6.623145 seconds.
Elapsed time is 0.179527 seconds.