/**
* @author: yaobin
* @date: 2019/6/13
* @description: 时间差工具
*/
public class DateDiffUtil {
private static final Long ONE_DAY_SECOND = 24*60*60l;
private static final Long ONE_HOUR_SECOND = 60*60l;
private static final Long ONE_MINUTE_SECOND = 60l;
/**
* long格式秒的时间差转为x天x小时x分x秒
* @param dateDiff
* @return
*/
public static String praseFromLong2DHMSString(Long dateDiff) {
StringBuffer sb = new StringBuffer();
long day = dateDiff / ONE_DAY_SECOND;
if (day > 0) {
String strDay = day + "天";
sb.append(strDay);
dateDiff = dateDiff - day * ONE_DAY_SECOND;
}
long hour = dateDiff / ONE_HOUR_SECOND;
if (hour > 0) {
String strHour = hour + "时";
sb.append(strHour);
dateDiff = dateDiff - hour * ONE_HOUR_SECOND;
} else if (day > 0 && hour==0) {
String strHour = hour + "时";
sb.append(strHour);
dateDiff = dateDiff - hour * ONE_HOUR_SECOND;
}
long minute = dateDiff / ONE_MINUTE_SECOND;
if (minute>0) {
String strMinute = minute + "分";
sb.append(strMinute);
dateDiff = dateDiff - minute * ONE_MINUTE_SECOND;
} else if (hour >0 && minute ==0 ) {
String strMinute = minute + "分";
sb.append(strMinute);
dateDiff = dateDiff - minute * ONE_MINUTE_SECOND;
}
String second = dateDiff + "秒";
sb.append(second);
return sb.toString();
}
}
测试:
/**
* @author: yaobin
* @date: 2019/6/13
* @description:
*/
public class DateDiffDemo {
public static void main(String[] args) {
Long time = 67613l;
System.out.println(DateDiffUtil.praseFromLong2DHMSString(time));
}
}
结果: