您的位置:首页 > 编程语言 > Java开发

Java获取到现在的时间差

2014-07-24 15:51 281 查看
在开发过程中经常会计算目标时间到现在的时间差,最终显示成“2天前、1周前、1年前”这种格式。

虽然代码很简单,但是每次都写还是蛮烦的,现在记录一下,同时也分享一下(大家都不用写了,哈哈)。

public static String formatDateGap(Date date) {
long diffSeconds = ((new Date()).getTime() - date.getTime()) / 1000;
long day = diffSeconds / (24 * 60 * 60);
long hour = (diffSeconds / (60 * 60) - day * 24);
long min = ((diffSeconds / (60)) - day * 24 * 60 - hour * 60);
long s = (diffSeconds - day * 24 * 60 * 60 - hour * 60 * 60 - min * 60);
String timeGap = s + "秒前";
if (min > 0) {
timeGap = min + "分前";
}
if (hour > 0) {
timeGap = hour + "小时前";
}
if (day > 0) {
timeGap = day + "天前";
}
if (day >= 7) {
timeGap = day / 7 + "周前";
}
if (day >= 30) {
timeGap = day / 30 + "个月前";
}
if (day >= 365) {
timeGap = day / 365 + "年前";
}
return timeGap;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  时间差 java android