Save matrix from "writematrix" to clipboard

4 Ansichten (letzte 30 Tage)
Tim Schaller
Tim Schaller am 18 Feb. 2023
Kommentiert: Tim Schaller am 19 Feb. 2023
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 Kommentare
Md. Al-Imran Abir
Md. Al-Imran Abir am 18 Feb. 2023
There is a function named clipboard (clipboard) which might help you.
Tim Schaller
Tim Schaller am 18 Feb. 2023
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.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

dpb
dpb am 18 Feb. 2023
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 Kommentare
Tim Schaller
Tim Schaller am 19 Feb. 2023
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 am 19 Feb. 2023
I fugured it out by myself. You just need to change the mode of sprintf form g to f.
Thank you so much!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Environment and Settings finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by