//获取结束的时间戳
long expirationTime = data.getExpirationTime();
//获得当前时间戳
long timeStamp = System.currentTimeMillis();
//格式
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//转换为String类型
String endDate = formatter.format(expirationTime);//结束的时间戳
String startDate = formatter.format(timeStamp);//开始的时间戳
// 获取服务器返回的时间戳 转换成"yyyy-MM-dd HH:mm:ss"
// 计算的时间差
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date d1 = df.parse(endDate);//后的时间
Date d2 = df.parse(startDate); //前的时间
Long diff = d1.getTime() - d2.getTime(); //两时间差,精确到毫秒
Long day = diff / (1000 * 60 * 60 * 24); //以天数为单位取整
Long hour=(diff/(60*60*1000)-day*24); //以小时为单位取整
Long min=((diff/(60*1000))-day*24*60-hour*60); //以分钟为单位取整
Long second=(diff/1000-day*24*60*60-hour*60*60-min*60);//秒
Log.e("tag","day =" +day);
Log.e("tag","hour =" +hour);
Log.e("tag","min =" +min);
Log.e("tag","second =" +second);
} catch (ParseException e) {
e.printStackTrace();
}
参考:https://blog.csdn.net/weixin_42630638/article/details/123983058
网友评论