1) 通过Date的方式
public int julianDateTest() {
Date lDate = new Date();
Calendar lCal = Calendar.getInstance();
lCal.setTime(lDate);
int lYear = lCal.get(Calendar.YEAR);
int lMonth = lCal.get(Calendar.MONTH) + 1;
int lDay = lCal.get(Calendar.DATE);
int a = (14 - lMonth) / 12;
int y = lYear + 4800 - a;
int m = lMonth + 12 * a - 3;
Integer lJulianDate = lDay + (153 * m + 2) / 5 + 365 * y + y / 4 - y / 100 + y / 400 - 32045;
return lJulianDate.intValue();
}
2) 通过Time的方式
public static int getJulianDay() {
Time t = new Time();
t.setToNow();
return Time.getJulianDay(t.toMillis(true), t.gmtoff);
}