convert seconds to time

63 Ansichten (letzte 30 Tage)
Matlab Newbee
Matlab Newbee am 3 Jan. 2018
Kommentiert: Peter Perkins am 27 Nov. 2018
Hi Team,
I have an array of numbers, which represents the number of seconds from 12am. Is there any way that I could convert seconds into time.
For example; 28225.6 is the number format I have, which is represents 28225.6 seconds after 12am. That is 7:50:25 AM in time.
Thank you

Akzeptierte Antwort

Fangjun Jiang
Fangjun Jiang am 3 Jan. 2018
datestr(seconds(28225.6),'HH:MM:SS PM')
  3 Kommentare
Anmar Mohammed
Anmar Mohammed am 26 Nov. 2018
Thanks alot for sharing
Peter Perkins
Peter Perkins am 27 Nov. 2018
Matlab Newbee, just so you know: there's probably no good reason to convert those durations (the array that seconds(28225.6) creates) to char. Unless all you want is a text representation for export outside of MATLAB, or maybe to annotate a plot, you would be shooting yourself in the foot. See my other response.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Peter Perkins
Peter Perkins am 5 Jan. 2018
Unless you are using an older version of MATLAB, use durations:
>> seconds(28225.6)
ans =
duration
28225.6 sec
  2 Kommentare
Matlab Newbee
Matlab Newbee am 8 Jan. 2018
Thank you
Peter Perkins
Peter Perkins am 9 Jan. 2018
From your other post, it looks like you'd probably want those to display as h:m:s. Either set the format after calling seconds, or just call duration.
>> s = seconds(28225.6)
s =
duration
28226 sec
>> s.Format = 'hh:mm:ss.SSS'
s =
duration
07:50:25.600
>> s = duration(0,0,28225.6)
s =
duration
07:50:25

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Dates and Time finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by