参考了网上的一些方法思路,取得是近似值,如果有更好的方法,欢迎告知。
String difftime = dateDiff(now, endtime, "yyyy/MM/dd");
private String dateDiff(String startTime, String endTime, String format) {
String diffTime = "还有X个月Y天过期";
SimpleDateFormat df = new SimpleDateFormat(format, Locale.getDefault());
double nm = 24 * 60 * 60 * (365/12);// 一个月的秒数
int nd = 24 * 60 * 60;
long diff;
try {
diff = (df.parse(endTime).getTime() - df.parse(startTime).getTime()) / 1000;// 相差秒数
int month = (int) (diff / nm);
int day = (int) (diff % nm / nd);
diffTime = "相差" + month + "个月" + day + "天";
} catch (Exception e) {
// TODO: handle exception
}
return diffTime;
}