Effacer les filtres
Effacer les filtres

How to get string that uses datetime Format property?

4 vues (au cours des 30 derniers jours)
Bruce Elliott
Bruce Elliott le 28 Sep 2015
Commenté : Bruce Elliott le 28 Sep 2015
Note: I posted this question to the newsgroup as well. I'm not sure which is the more appropriate forum.
Is there a way to get string variable that is equivalent to the output of the disp method for a datetime object, which is written to the command line interface? I'd like to print formatted strings from datetime arrays to a file, but fprintf says that it is not defined for datetime inputs.
  1 commentaire
Guillaume
Guillaume le 28 Sep 2015
forum and newsgroup are as appropriate. Use whichever you prefer or both.

Connectez-vous pour commenter.

Réponse acceptée

Guillaume
Guillaume le 28 Sep 2015
The way to convert a datetime into a string according to the datetime Format attribute is actually very simple: Use char
d = datetime;
s1 = char(d)
d.Format = 'uuuu-MM-dd''T''HH:mm:ss';
s2 = char(d)
The documentation of datetime (accessed through doc datetime) is actually not very good as it does not tell you all the methods of the datetime object. However you can see all of them with
help datetime
  1 commentaire
Bruce Elliott
Bruce Elliott le 28 Sep 2015
Thank you, Guillaume! I had thought there must be an easy way to do this, since the formatted strings are clearly available. Thanks also for the tip to check the help text for datetime - I had been relying heavily on the documentation since I'm still learning about the datetime class.

Connectez-vous pour commenter.

Plus de réponses (1)

Peter Perkins
Peter Perkins le 28 Sep 2015
Bruce, in your C.S-S.M post, you said, "write data and labels to a file". It's worth noting that if you have everything in a table, writetable will automatically write out the datetimes to the file with no conversion necessary. It uses the format and the timezone that the datetime variable in the table is set to, so if you want both a local and a UTC timestamp in the file, you'd have to have two datetime variables in the table.
  1 commentaire
Bruce Elliott
Bruce Elliott le 28 Sep 2015
Thanks, Peter. That sounds like it's worth a try, although I'm currently assembling the table line-by-line and just writing each line to the file as I go. Still, if I can figure out how to collect all the necessary data into the table and then write it all at once, that would be a lot simpler.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Data Type Identification dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by