时间上面的转换

阅读更多

 

  仿照微信朋友圈实现几分钟前,几天前

package utils;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class FriendlyTime {
	public static void main(String[] args) throws ParseException {  
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:m:s");  
        Date date = format.parse("2016-05-09 16:02:35");  
        System.out.println(getFriendlytime(date));  
    }  
	public static String getFriendlytime(Date d){
		long delta = (new Date().getTime()-d.getTime())/1000;
		if(delta<=0)return d.toLocaleString();
		if(delta/(60*60*24*365) > 0) return delta/(60*60*24*365) +"年前";
		if(delta/(60*60*24*30) > 0) return delta/(60*60*24*30) +"个月前";
		if(delta/(60*60*24*7) > 0)return delta/(60*60*24*7) +"周前";
		if(delta/(60*60*24) > 0) return delta/(60*60*24) +"天前";
		if(delta/(60*60) > 0)return delta/(60*60) +"小时前";
		if(delta/(60) > 0)return delta/(60) +"分钟前";
		return "刚刚";
	}
}

   java中过时的date.toLocaleString()的解决方案:提示description

  

SimpleDateFormat sdf = (SimpleDateFormat) DateFormat.getDateTimeInstance();    
System.out.println("日期时间:" + sdf.format(date)); 

 

你可能感兴趣的:(时间上面的转换)