如何获得matlab的输出? 不整个输出(我知道日记可以提供帮助)
一个简单的例子:
>> st = rng
st =
Type: 'twister'
Seed: 0
State: [625x1 uint32]
我想要的是将输出复制到剪贴板。当我使用剪贴板功能时,会发生错误:
>> clipboard('copy', st)
Error using mat2str (line 54)
Input matrix must be numeric.
Error in clipboard (line 56)
stuff = mat2str(stuff);
我可以轻松地将输出字符串放到剪贴板上,而不是使用鼠标选择...复制...
谢谢!
添加:
谢谢,议员!复制DISP表示是我想要的。
但是在我运行命令 toString1(rng)之后,我可以在剪贴板中得到一些东西:
>> rng
ans =
Type: 'twister'
Seed: 11284109
State: [625x1 uint32]
答案 0 :(得分:1)
要将矩阵复制到剪贴板,我建议MAT2CLIP FileExchange提交。它不仅支持字符串或数字矩阵,还支持混合单元阵列,逻辑等。
虽然它不支持结构。如果您需要复制单个字段,您仍然可以使用mat2clip。您可以设置for循环结构字段,并使用pause
粘贴剪贴板中的字段。
如果您有兴趣复制整个结构或其DISP表示,请检查此问题 - How to get result of DISP as return parameter into a variable?
此问题的一个解决方案是将DISP输出转换为字符串,您可以使用mat2clip将其复制到剪贴板(对于任何使用display
方法的对象都是通用的):
toString = @(x) evalc('disp(x)');
mystring = toString(mystruct);
另一个答案建议来自FileExchange的STRUCT2STR。另请检查STRUCT2STR recursive。