Using Java UUID in Matlab

27 vues (au cours des 30 derniers jours)
Gurudatha Pai
Gurudatha Pai le 7 Sep 2015
I am trying to use JAVA UUIDs to identify the objects in my code. When I try to print it inside an fprintf, I get a weird error. I could print it in disp but that is not ideal since I want a good formatted message.
>> temp = java.util.UUID.randomUUID;
>> myuuid = temp.toString;
>> disp(myuuid)
a8a4eae2-6cc7-47d3-b58e-408b71fab260
>> fprintf(myuuid)
Error using fprintf
Invalid file identifier. Use fopen to generate a valid file identifier.
Any help in understanding or fixing this error is appreciated.
  1 commentaire
David Galbally
David Galbally le 21 Août 2021
>> temp = java.util.UUID.randomUUID;
>> myuuid = temp.toString;
>> MATLABstr = myuuid.toCharArray';
>> fprintf(MATLABstr)

Connectez-vous pour commenter.

Réponses (3)

Walter Roberson
Walter Roberson le 7 Sep 2015
Modifié(e) : Walter Roberson le 7 Sep 2015
Try
fprintf('%s\n' myuuid);
If that doesn't work then
fprintf('%s\n', char(myuuid));
  3 commentaires
Walter Roberson
Walter Roberson le 7 Sep 2015
It appears that I was adding a second option to my answer just as you replied. Did you get a chance to try
fprintf('%s\n', char(myuuid));
Emile Glorieux
Emile Glorieux le 26 Août 2020
This doesn't work for me.
>> fprintf('%s\n', char(myuuid));
Undefined function or variable 'myuuid'.

Connectez-vous pour commenter.


Philipp Tempel
Philipp Tempel le 17 Mar 2022
This may be too stupid to be true but, looking at the source code of tempname(), you can see that you can simply do
uuid = char(matlab.lang.internal.uuid())
  1 commentaire
Andrei Veldman
Andrei Veldman le 17 Mar 2022
Modifié(e) : Andrei Veldman le 17 Mar 2022
True, but then you would be using an undocumented Matlab feature, which could change without warning...

Connectez-vous pour commenter.


Andrei Veldman
Andrei Veldman le 19 Jan 2022
...or, using pure Matlab (no need for converting form Java):
[~,guid] = fileparts(tempname)
guid = 'tp8d1a6bd2_0ac7_4c0a_8d3d_b32e4e97b746'

Catégories

En savoir plus sur Call Java from MATLAB dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by