Android 时间差值计算
/**
* 获取时间差值 毫秒
* @param startTime
* @param endTime
* @return
*/
private static long getTimeRange(String startTime,String endTime){
long rangTime = 0;
SimpleDateFormat formatter = new SimpleDateFormat("yy-MM-dd HH:mm:ss", Locale.CHINA);
try {
Date startDate = formatter.parse(startTime);
Date endDate = formatter.parse(endTime);
Calendar startCalender = Calendar.getInstance();
startCalender.setTime(startDate);
long startM = startCalender.getTimeInMillis();
Calendar endCalender = Calendar.getInstance();
endCalender.setTime(endDate);
long endM = endCalender.getTimeInMillis();
rangTime = endM - startM;
} catch (ParseException e) {
e.printStackTrace();
}
return rangTime;
}
/**
* 返回 今天 明天 昨天 其他返回 *-*
*
* @param time
* @return
*/
public static String longTime2Day(long time) {
Calendar todayCal = Calendar.getInstance();
todayCal.setTimeInMillis(System.currentTimeMillis());
Calendar dayCal = Calendar.getInstance();
dayCal.setTimeInMillis(time);
if (dayCal.get(Calendar.YEAR) == (todayCal.get(Calendar.YEAR))) {
int diffDay = dayCal.get(Calendar.DAY_OF_YEAR)
- todayCal.get(Calendar.DAY_OF_YEAR);
if (diffDay == 0) {
return "今天";
} else if (diffDay == 1) {
return "明天";
} else if (diffDay == -1) {
return "昨天";
}
}
return longTime2Date(time,DATE_TYPE_M_D);
}
/**
* 获取星期几
*
* @param time long 类型的时间
* @return
*/
@NonNull
public static String longTime2Week(long time) {
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(time);
int i = calendar.get(Calendar.DAY_OF_WEEK);
switch (i) {
case Calendar.SUNDAY:
return "星期日";
case Calendar.MONDAY:
return "星期一";
case Calendar.TUESDAY:
return "星期二";
case Calendar.WEDNESDAY:
return "星期三";
case Calendar.THURSDAY:
return "星期四";
case Calendar.FRIDAY:
return "星期五";
case Calendar.SATURDAY:
return "星期六";
default:
return "";
}
}