setting default date and time format in R2015a ?

1 visualización (últimos 30 días)
Liqun
Liqun el 18 de Mayo de 2015
Comentada: Peter Perkins el 26 de Mayo de 2015
I have problems to set default date format in matlab R2015a version. After I enter the command to change the default date format, it seems not working:
datetime.setDefaultFormats('defaultdate','yyyy-MM-dd'); date
ans =
18-May-2015
datetime.setDefaultFormats('defaultdate','MM/dd/yyyy'); date
ans =
18-May-2015
The date format have not changed! What I did wrong here?

Respuestas (2)

Walter Roberson
Walter Roberson el 18 de Mayo de 2015
The date() call does not return a datetime object: it returns a string in a fixed format. datetime() called without any parameters returns the current date and time as a datetime object.
  2 comentarios
Liqun
Liqun el 19 de Mayo de 2015
But, when I change date to datetime(), the date format have no change also. see below: datetime.setDefaultFormats('defaultdate','yyyy-MM-dd'); datetime()
ans = 19-May-2015 14:42:57
datetime.setDefaultFormats('defaultdate','yyyy-MM-dd'); datetime
ans = 19-May-2015 14:43:05
Peter Perkins
Peter Perkins el 26 de Mayo de 2015
From the help:
"datetime.setDefaultFormats('default', FMT) sets the default display format for datetimes. The format is specified by the format string FMT.
datetime.setDefaultFormats('defaultdate', FMT) sets the default display format for datetimes that are created without time components. The format is specified by the format string FMT."
You might want:
>> datetime.setDefaultFormats('default','yyyy-MM-dd'); datetime
ans =
2015-05-26
But never showing the time for datetimes that are not at midnight might not be a good idea. Perhaps
>> datetime.setDefaultFormats('defaultdate','yyyy-MM-dd'); datetime('today')
ans =
2015-05-26
is a more relevant example.

Iniciar sesión para comentar.


Peter Perkins
Peter Perkins el 18 de Mayo de 2015
As Walter says, date is from the set of older functions that include datenum, datestr, and datevec. datetime was introduced in R2014b. Best to not mix the old with the new.
With datetime, there's no worries about converting back and forth between a numeric, a char, and a vector date/time representation. It's all in one place: datetime arrays.
Hope this helps.

Categorías

Más información sobre Dates and Time en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by