时间间隔计算(分钟前,今天,昨天,过去的时间)
2017-07-05 11:16
281 查看
public static String getInterval(String createtime) throws ParseException { //传入的时间格式必须类似于2017-07-07 17:41:00这样的格式 String interval = null; SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); ParsePosition pos = new ParsePosition(0); Date d = (Date) sd.parse(createtime, pos); Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(createtime); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); Calendar nowtime = Calendar.getInstance(); nowtime.setTime(new Date()); //用现在距离1970年的时间间隔new Date().getTime()减去以前的时间距离1970年的时间间隔d.getTime()得出的就是以前的时间与现在时间的时间间隔 long time = new Date().getTime() - d.getTime();// 得出的时间间隔是毫秒 if(time/60000 < 60 && time/60000 > 0) { //如果时间间隔小于60分钟则显示多少分钟前 int m = (int) ((time%3600000)/60000);//得出的时间间隔的单位是分钟 interval = m + "分钟前"; }else if((nowtime.get(nowtime.DAY_OF_YEAR)-calendar.get(calendar.DAY_OF_YEAR))==0){ if(calendar.get(Calendar.HOUR_OF_DAY)<10){ if(calendar.get(Calendar.MINUTE)<10){ interval = "今天0"+calendar.get(Calendar.HOUR_OF_DAY)+":0"+calendar.get(Calendar.MINUTE); }else{ interval = "今天0"+calendar.get(Calendar.HOUR_OF_DAY)+":"+calendar.get(Calendar.MINUTE); } }else{ if(calendar.get(Calendar.MINUTE)<10) { interval = "今天"+calendar.get(Calendar.HOUR_OF_DAY)+":0"+calendar.get(Calendar.MINUTE); }else{ interval = "今天"+calendar.get(Calendar.HOUR_OF_DAY)+":"+calendar.get(Calendar.MINUTE); } } }else if((nowtime.get(nowtime.DAY_OF_YEAR)-calendar.get(calendar.DAY_OF_YEAR))==1){ if(calendar.get(Calendar.HOUR_OF_DAY)<10){ if(calendar.get(Calendar.MINUTE)<10) { interval = "昨天0" + calendar.get(Calendar.HOUR_OF_DAY) + ":0" + calendar.get(Calendar.MINUTE); }else{ interval = "昨天0" + calendar.get(Calendar.HOUR_OF_DAY) + ":" + calendar.get(Calendar.MINUTE); } }else { if(calendar.get(Calendar.MINUTE)<10) { interval = "昨天" + calendar.get(Calendar.HOUR_OF_DAY) + ":0" + calendar.get(Calendar.MINUTE); }else{ interval = "昨天" + calendar.get(Calendar.HOUR_OF_DAY) + ":" + calendar.get(Calendar.MINUTE); } } }else { //超过24小时显示正常的时间, SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); ParsePosition pos1 = new ParsePosition(0); Date d1 = (Date) sdf.parse(createtime, pos1); interval = sdf.format(d1); } return interval; }
相关文章推荐
- [LINK]用Python计算昨天、今天和明天的日期时间
- java 计算过去的时间到今天的时间段
- iOS-OC根据时间戳获取距离现在的状态(刚刚,分钟前,今天,昨天)
- 时间计算,返回今天昨天明天,年月日
- JavaScript——计算两个时间间隔的分钟数
- iOS-OC根据时间戳获取距离现在的状态(刚刚,分钟前,今天,昨天)
- iOS-OC根据时间戳获取距离现在的状态(刚刚,分钟前,今天,昨天)
- C++计算当前时间点间隔N天的时间(不使用CTimeSpan类)
- Mysql 求时间 between 昨天 and 上个月的今天 等时间函数
- Android 字符串转指定格式时间 日期处理 去掉月份或天多余的0 获取今天 昨天 明天等的日期和星期
- java计算两个时间相差(天、小时、分钟、秒)
- 计算一个时间距离今天还有多少天
- c#时间间隔的计算
- php 今天 昨天 明天 时间戳
- js获取当前时间(昨天、今天、明天)
- 一个简单方法完成C#时间间隔的计算
- js仿照聊天记录的时间显示 今天 昨天
- C#日期比较计算两个日期的时间间隔,日期格式化
- JS计算两个时间相差的分钟数
- 计算两个日期的时间间隔