时间戳转化为文字描述

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/q714093365/article/details/78113714

Java Android 时间戳转化为 文字描述

小于1分钟  :刚刚
大于等于1分钟 小于1小时  几分钟前
大于等于1小时小于1天 :几小时前
大于等于1天小于1年 :几月几日
大于等于1年:几几年几月几日


    /**
     * 返回文字描述的日期
     *
     * @param time 时间戳  秒
     * @return String类型的文字描述
     */
    public static String getTimeFormatText(Integer time) {
        if (time == null) {
            return "";
        }
        final long second = 1;// 1秒
        final long minute = 60 * second;// 1分钟
        final long hour = 60 * minute;// 1小时
        final long day = 24 * hour;// 1天
        final long month = 31 * day;// 月
        final long year = 12 * month;// 年

        //当前时间
        int newTime = (int) (System.currentTimeMillis() / 1000);
        //相差时间
        int diff = newTime - time;
        if (diff >= year) {
            SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
            return formatter.format(Long.valueOf(time + "000"));
        }
        if (diff >= day && diff < year) {

            SimpleDateFormat formatter = new SimpleDateFormat("MM-dd");
            return formatter.format(Long.valueOf(time + "000"));
        }

        if (diff >= hour && diff < day) {
            return (diff / hour) + "小时前";
        }
        if (diff >= minute && diff < hour) {
            return (diff / minute) + "分钟前";
        }
        return "刚刚";
    }





猜你喜欢

转载自blog.csdn.net/q714093365/article/details/78113714