Save matrix from "writematrix" to clipboard

6 次查看(过去 30 天)
Hi, I need to save a matrix to the clipboard. Because the points need to be seperated by comma, I used the function "writematrix".
a = [1 2 4;5 6 7;8 9 10];
writematrix(a,'Bachelorarbeit.txt')
type Bachelorarbeit.txt
1,2,4 5,6,7 8,9,10
Now i need to save the matrix shown in Matlab to the clipboard. Is there a way to do so? I could not find anything.
Thanks for helping me.
  2 个评论
Md. Al-Imran Abir
Md. Al-Imran Abir 2023-2-18
There is a function named clipboard (clipboard) which might help you.
Tim Schaller
Tim Schaller 2023-2-18
Hi, I already tried it with clipboard. The problem is that I need to save it in the exact way it is shwon in the text file. But I don't know how to do that.

请先登录,再进行评论。

采纳的回答

dpb
dpb 2023-2-18
You've got to create the entire text as a string or char() variable.
It would be more efficient to avoid the intermediary disk file...
a = [1 2 4;5 6 7;8 9 10];
fmt=[repmat('%g,',1,size(a,2)-1) '%g\n'];
clipboard('copy',sprintf(fmt,a.'))
content=clipboard("paste")
content =
'1,2,4 5,6,7 8,9,10 '
  3 个评论
Tim Schaller
Tim Schaller 2023-2-19
in my code the matrix looks like this, but is much longer
a =
0 0 1.000000000000000
0.017150418627992 0 0.823370357174576
0.072731407686129 0 0.654969826345343
0.167425334872282 0 0.505049838368501
0.293716496272837 0 0.380416474388619
0.441054925718054 0 0.281320429539904
Tim Schaller
Tim Schaller 2023-2-19
I fugured it out by myself. You just need to change the mode of sprintf form g to f.
Thank you so much!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Environment and Settings 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by