android 将时间戳转为代表"距现在多久之前"的字符串
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android 将时间戳转为代表"距现在多久之前"的字符串相关的知识,希望对你有一定的参考价值。
public static final void testDate()//比如现在时间:2016/5/30 11:45:5
Date now = new Date(1464579905000l);
//上次时间: 2016/5/28 11:44:15
Date old = new Date(1464407055000l);
System.out.println(String.format("距现在%s之前", testPassedTime(now.getTime(), old.getTime())));
private static final long MINUTE_SECONDS = 60; //1分钟多少秒
private static final long HOUR_SECONDS = MINUTE_SECONDS*60;
private static final long DAY_SECONDS = HOUR_SECONDS*24;
private static final long YEAR_SECONDS = DAY_SECONDS*365;
public static String testPassedTime(long nowMilliseconds, long oldMilliseconds)
long passed = (nowMilliseconds-oldMilliseconds) /1000;//转为秒
if (passed > YEAR_SECONDS)
return passed/YEAR_SECONDS+"年";
else if (passed > DAY_SECONDS)
return passed/DAY_SECONDS+"天";
else if (passed > HOUR_SECONDS)
return passed/HOUR_SECONDS+"小时";
else if (passed > MINUTE_SECONDS)
return passed/MINUTE_SECONDS+"分钟";
else
return passed+"秒";
Java 如何获得 Unix 时间戳
使用下面的代码获得时间戳。long epoch = System.currentTimeMillis()/1000;
时间戳是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,所以可以将当前毫秒时间转换成秒级时间就可以了:System.currentTimeMillis()/1000L就可以了 参考技术A new Time(); 参考技术B String date = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(new java.util.Date(UnixTimestamp * 1000));
以上是关于android 将时间戳转为代表"距现在多久之前"的字符串的主要内容,如果未能解决你的问题,请参考以下文章