String Matlab中任意数据类型到字符串的转换

String Matlab中任意数据类型到字符串的转换,string,matlab,String,Matlab,如何在Matlab中将任意数据类型的变量转换为字符串?也就是说,我希望有一个生成字符串的函数,这样我就可以连接它并执行其他操作,而不必事先知道数据类型 对于类和其他非基本数据类型,类似disp()输出的东西可以正常工作,但我不知道如何捕获disp()的输出 我希望能够做到这一点,而不必检测数据类型,然后调用每个xyz2str。您可以使用evalc捕获disp的输出: any2str = @(x) evalc('disp(x)'); any2str(3) any2str(eye(3)) any2

如何在Matlab中将任意数据类型的变量转换为字符串?也就是说,我希望有一个生成字符串的函数,这样我就可以连接它并执行其他操作,而不必事先知道数据类型

对于类和其他非基本数据类型,类似disp()输出的东西可以正常工作,但我不知道如何捕获disp()的输出


我希望能够做到这一点,而不必检测数据类型,然后调用每个xyz2str。

您可以使用
evalc
捕获
disp
的输出:

any2str = @(x) evalc('disp(x)');

any2str(3)
any2str(eye(3))
any2str({'hello', 'world'})
any2str(struct('Name', 'Sarah', 'Age', 23)) 

看起来你现在可以使用了

jsonencode(obj)

参见

请不要在多个问题中发布相同的答案。如果多个问题接受完全相同的答案,您可以将其标记为重复。