【发布时间】:2014-03-29 12:09:47
【问题描述】:
在android中,运行下面的代码sn-p时,date3返回-1
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
虽然 Time 对象 't' 在所有条件下都具有预期值,但 toMillis() 函数返回的 long 值仅为 -1。 此外,对于 2038 年 1 月 19 日之后的所有日期上限,toMillis() 函数仅返回 -1 而不是预期值。
我不明白,也没有找到任何合适的原因或解决方案。 请让我知道,如果我做错了什么或有任何其他方法可以找到此日期之后的毫秒值。
【问题讨论】: