android时间比较

/**
    * 计算两个日期型的时间相差多少时间
    * @param startDate  开始日期
    * @param endDate    结束日期
      * @return
    */
    public  String twoDateDistance(Date startDate,Date endDate){
    	
    	if(startDate == null ||endDate == null){
    		return null;
    	}
      	long timeLong = endDate.getTime() - startDate.getTime();
      	if (timeLong<60*1000)
      		return timeLong/1000 + "秒前";
      	else if (timeLong<60*60*1000){
      		timeLong = timeLong/1000 /60;
      		return timeLong + "分钟前";
      	}
      	else if (timeLong<60*60*24*1000){
      		timeLong = timeLong/60/60/1000;
      		return timeLong+"小时前";
      	}
      	else if (timeLong<60*60*24*1000*7){
      		timeLong = timeLong/1000/ 60 / 60 / 24;
      		return timeLong + "天前";
      	}
      	else if (timeLong<60*60*24*1000*7*4){
      		timeLong = timeLong/1000/ 60 / 60 / 24/7;
      		return timeLong + "周前";
      	}
      	else {
      		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
      		sdf.setTimeZone(TimeZone.getTimeZone("GMT+08:00"));
      		return sdf.format(startDate);
      	}
}

Date startDate = new Date(publishtime);//publishtime为"E MMMM dd hh:mm:ss z yyyy"这种格式,

跟当前的时间

Date nowDate = Calendar.getInstance().getTime();

就可以得到与微博一样精细的时间差。

你可能感兴趣的:(Android)