在Android中,在運行下面的代碼片段,DATE3返回-1爲什麼toMillis()函數返回-1在java中
booking_year2 = 2038;
booking_month2 = 1;
booking_day2 = 17;
Time t = new Time();
t.set(booking_day2, booking_month2 - 1, booking_year2);
long date3 = t.toMillis(false);
//date3 returns 2147451300000 as expected
//But if we run with values:
booking_year2 = 2038;
booking_month2 = 1;
booking_day2 = 18;
//date3 returns -1
雖然,時間對象「T」已經預期值時, toMillis()函數返回的long值僅爲-1。 而且,對於2038年1月19日之後的所有日期上限值,toMillis()函數只返回-1而不是期望值。
我沒有理解,也沒有找到任何合適的理由或解決方案。 請讓我知道,如果我做錯了什麼或有什麼其他的方式來查找這個日期後的毫秒值。
http://en.wikipedia.org/wiki/Year_2038_problem? – zapl