zoukankan      html  css  js  c++  java
  • Android 将时间戳转为代表"距现在多久之前"的字符串

    public String getStandardDate(int dateTime) {
    
            StringBuffer sb = new StringBuffer();
    
            long t = Long.parseLong(String.valueOf(dateTime));
            long time = System.currentTimeMillis() - (t * 1000);
            long mill = (long) Math.ceil(time / 1000);//秒前
    
            long minute = (long) Math.ceil(time / 60 / 1000.0f);// 分钟前
    
            long hour = (long) Math.ceil(time / 60 / 60 / 1000.0f);// 小时
    
            long day = (long) Math.ceil(time / 24 / 60 / 60 / 1000.0f);// 天前
    
            long month = (long) Math.ceil(time / 30 / 24 / 60 / 60 / 1000.0f);// 月前
    
            long year = (long) Math.ceil(time / 12 / 30 / 24 / 60 / 60 / 1000.0f);// 年前
    
            Calendar cal = Calendar.getInstance();
    
            long showYear = cal.get(Calendar.YEAR);
    
            long showMonth = cal.get(Calendar.MONTH);
    
            long showDay = cal.get(Calendar.DATE);
    
            long showHour = cal.get(Calendar.HOUR_OF_DAY);
    
            long showMint = cal.get(Calendar.MINUTE);
    
            if (month - 1 > 0) {
                if (month >= 12) {
                    sb.append(showYear + "." + showMonth + "." + showDay + " " + showHour + ":" + showMint);
                } else {
                    sb.append(month + "个月");
                }
            } else if (day - 1 > 0) {
                if (day >= 30) {
                    sb.append("1个月");
                } else {
                    sb.append(day + "天");
                }
            } else if (hour - 1 > 0) {
                if (hour >= 24) {
                    sb.append("1天");
                } else {
                    sb.append(hour + "个小时");
                }
            } else if (minute - 1 > 0) {
                if (minute == 60) {
                    sb.append("1个小时");
                } else {
                    sb.append(minute + "分钟");
                }
            } else if (mill - 1 > 0) {
                if (mill == 60) {
                    sb.append("1分钟");
                } else {
                    sb.append(mill + "秒");
                }
            } else {
                sb.append("刚刚");
            }
            if (month <= 12 && !sb.toString().equals("刚刚")) {
                sb.append("前");
            }
            return sb.toString();
        }
  • 相关阅读:
    COF框架集成mongodb驱动
    在 RedHat Enterprise、CentOS 或 Fedora Linux 上安装 MongoDB
    利用RATF框架实现web状态的监控
    利用接口测试框架实现web状态的监控
    uwsgi配置
    NODE_ENV&&cross-env的使用
    局部安装的webpack怎么通过npm脚本执行
    react
    .gitignore无法忽略部分文件/文件夹
    MongoDB
  • 原文地址:https://www.cnblogs.com/niray/p/4030624.html
Copyright © 2011-2022 走看看