Java 如何将毫秒转换为天?
我需要从毫秒开始的天数 我做的是Java 如何将毫秒转换为天?,java,Java,我需要从毫秒开始的天数 我做的是 long days = (millis / (60*60*24*1000)) % 365; 这是真的吗?如果没有,请告诉我如何从毫秒中获取天数 请不要建议去做 Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(millis); int mDay = calendar.get(Calendar.DAY_OF_MONTH); 很确定这是正确的,但是没有模 %365意味着将其除
long days = (millis / (60*60*24*1000)) % 365;
这是真的吗?如果没有,请告诉我如何从毫秒中获取天数
请不要建议去做
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(millis);
int mDay = calendar.get(Calendar.DAY_OF_MONTH);
很确定这是正确的,但是没有模 %365意味着将其除以365,得到余数 一天有(60*60*24*1000)毫秒 因此,对于转换:
millis/(60 seconds * 60 minutes * 24 hours * 1000 ms/second)
应该这样做。一个工作正常,但一定要检查服务器的标准时间。当服务器的标准时间不是您期望的时间时,毫秒通常会产生问题,或者更确切地说是不匹配。代码:
public boolean isAdult(Date userDob, int minimumAge) {
Calendar cal = Calendar.getInstance();
long dayNow = TimeUnit.MILLISECONDS.toDays(cal.getTimeInMillis());
cal.setTime(userDob);
long dayDob = TimeUnit.MILLISECONDS.toDays(cal.getTimeInMillis());
long ageInDays = dayNow - dayDob;
long ageInYears = ageInDays / 365;
if (ageInYears < minimumAge) {
return false;
} else {
return true;
}
}
public boolean isAdult(日期userDob,int minimumAge){
Calendar cal=Calendar.getInstance();
long dayNow=TimeUnit.millises.toDays(cal.getTimeInMillis());
校准设定时间(userDob);
long dayDob=TimeUnit.millises.toDays(cal.getTimeInMillis());
长期天数=dayNow-dayDob;
长寿年=长寿日/365;
if(年龄年<最小年龄){
返回false;
}否则{
返回true;
}
}
@Apurva您如何处理闰年?
millis/(60 seconds * 60 minutes * 24 hours * 1000 ms/second)
public boolean isAdult(Date userDob, int minimumAge) {
Calendar cal = Calendar.getInstance();
long dayNow = TimeUnit.MILLISECONDS.toDays(cal.getTimeInMillis());
cal.setTime(userDob);
long dayDob = TimeUnit.MILLISECONDS.toDays(cal.getTimeInMillis());
long ageInDays = dayNow - dayDob;
long ageInYears = ageInDays / 365;
if (ageInYears < minimumAge) {
return false;
} else {
return true;
}
}