convert seconds to time

103 次查看(过去 30 天)
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

采纳的回答

Fangjun Jiang
Fangjun Jiang 2018-1-3
datestr(seconds(28225.6),'HH:MM:SS PM')
  3 个评论
Anmar Mohammed
Anmar Mohammed 2018-11-26
Thanks alot for sharing
Peter Perkins
Peter Perkins 2018-11-27
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.

请先登录,再进行评论。

更多回答(1 个)

Peter Perkins
Peter Perkins 2018-1-5
Unless you are using an older version of MATLAB, use durations:
>> seconds(28225.6)
ans =
duration
28225.6 sec
  2 个评论
Peter Perkins
Peter Perkins 2018-1-9
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

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Dates and Time 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by