我希望在Java中将时间以秒为单位转换为日时分和秒

时间:2016-08-06 09:14:19

标签: java simpledateformat

例如,我想将283392s转换为3d 6h 43m 12s。可以用SimpleDateFormat实现吗?

2 个答案:

答案 0 :(得分:0)

在java 8中,您可以执行以下单行程序:

import java.time.LocalTime;
System.out.println(LocalTime.MIN.plusSeconds(283392).toString());

返回" 6:43:12"

答案 1 :(得分:0)

应该像使用TimeUnit一样轻松完成:

 int day = (int)TimeUnit.SECONDS.toDays(seconds);        
 long hours = TimeUnit.SECONDS.toHours(seconds) - (day *24);
 long minute = TimeUnit.SECONDS.toMinutes(seconds) - (TimeUnit.SECONDS.toHours(seconds)* 60);
 long second = TimeUnit.SECONDS.toSeconds(seconds) - (TimeUnit.SECONDS.toMinutes(seconds) *60);