Android 将时间戳转为代表"距现在多久之前"的字符串

    /**
     * 将时间戳转为代表"距现在多久之前"的字符串
     * @param timeStr    时间戳
     * @return
     */
    public static String getStandardDate(String timeStr) {

        StringBuffer sb = new StringBuffer();

        long t = Long.parseLong(timeStr);
        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);// 天前

        if (day - 1 > 0) {
            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 (!sb.toString().equals("刚刚")) {
            sb.append("前");
        }
        return sb.toString();
    }
时间: 2024-10-04 03:44:50

Android 将时间戳转为代表"距现在多久之前"的字符串的相关文章

时间戳转为代表"距现在多久之前"的字符串

/**   * 将时间戳转为代表"距现在多久之前"的字符串   * @param timeStr   时间戳   * @return   */   public static String getStandardDate(String timeStr) {          StringBuffer sb = new StringBuffer();          long t = Long.parseLong(timeStr);       long time = System.c

js 时间戳转为日期格式

js 时间戳转为日期格式 什么是Unix时间戳(Unix timestamp): Unix时间戳(Unix timestamp),或称Unix时间(Unix time).POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数.Unix时间戳不仅被使用在Unix系统.类Unix系统中,也在许多其他操作系统中被广泛采用. 目前相当一部分操作系统使用32位二进制数字表示时间.此类系统的Unix时间戳最多可以使用到格林威治

js时间戳转为日期格式

这个在php+mssql(日期类型为datetime)+ajax的时候才能用到,js需要把时间戳转为为普通格式,一般的情况下可能用不到 [php] view plaincopy <script> function getLocalTime(nS) { return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:\d{1,2}$/,' '); } alert(getLocalTime(1293072805)); </scr

Android中时间戳的详细解释

Android中时间戳的详细解释: (1).定义: 时间戳就是根据当前系统时间生成的一组随机数字. (2).作用: 作为对数据唯一性的一种判断依据.避免了重复修改数据所带来的错误! (3).应用: (1).在银行account表中建立时间戳字段timestamp,设定为文本类型varchar. (2).当银行A读取account表中的存款字段时,同时也读取时间戳字段,比如123456. (3).当银行A修改完存款数值后,进行存盘操作时,将先前读取的时间戳123456与当时表中的时间戳进行一次对比

在代码中动态设置android里View的边距

有时候需要动态设置某个View的位置,如果在布局文件中写则其布局已定. 这时可以通过在代码中根据不同的需要增加判断后,在设定边距等. 如下. 需要说下,setMargins() 方法.其括号中的四个参数依次对应的方位为-- 左,上,右,下. 左即指View的左边距. 代码来自mtk android 源码. 在代码中动态设置android里View的边距

android上让我放弃使用wstring来操作中英文字符串 转

android上让我放弃使用wstring来操作中英文字符串 2013-08-07 16:37:24|  分类: cocos2d|举报|字号 订阅 项目需要,需要对中英文字符串进行遍历修改等,本来wstring和string网上面有一大堆的介绍,其中有一个“跨平台”的方法,但是无奈是用到setlocale这个方法,这个方法在android(NDKR8D)上面无论如何都返回null,也可以看看其源代码(测试版本NDK R8D) google和度娘上找了我一整天,后来不得不请教himi,himi指了

swift 时间戳转为date (unix)

var timeStamp:Int=1433733352 var dateOfRecord=NSDate(timeIntervalSince1970:Double(timeStamp) var date = NSDate(timeIntervalSince1970: 1433733352) 一:下面这个时间转为时间戳的一个链接 http://tool.lu/timestamp 二:stackoveroverfolw关于这个主题的各种解决办法 http://stackoverflow.com/qu

iOS:时间格式化(标准时间转为时间戳、时间戳转为标准时间、时间戳转为日期)

新建一个NSString(Time)分类,创建类方法实现时间的转换 .h文件 #import <Foundation/Foundation.h> @interface NSString (KJTime) //时间戳--->时间 +(NSString *)transToTime:(NSString *)timsp; //时间戳--->日期 +(NSString *)transToDate:(NSString *)timsp; //时间---->时间戳 +(NSString *)

Android 角色时间戳

我是在用MediaRecorder进行录像时发生视频和音频不同步的问题,请教了一些人后感觉应该是没有时间戳,之前一直觉得时间戳就是给用户看的一个数据,查了一下发现不是的,以下是转载的.希望对大家实用: 首先向大家介绍什么是时间戳. 说得通俗一些,时间戳就是根据当前系统时间生成的一组随机数字. 时间戳一般作为对数据唯一性的一种推断根据.接下来向大家介绍一下我们能够怎样运用时间戳. 我们一定会碰到这种情况:银行A与银行B差点儿同一时候打开你的账户并看到你的账户上原有1000元存款.然后两家银行都想在