我正在处理一个实时项目,其中我需要查找自 1970 年 1 月 1 日以来的秒数。我使用以下代码来查找秒数,但给出了错误的结果。代码如下。
public long returnSeconds(int year, int month, int date) {
Calendar calendar1 = Calendar.getInstance();
Calendar calendar2 = Calendar.getInstance();
calendar1.set(1970, 01, 01);
calendar2.set(year, month, date);
long milliseconds1 = calendar1.getTimeInMillis();
long milliseconds2 = calendar2.getTimeInMillis();
long diff = milliseconds2 - milliseconds1;
long seconds = diff / 1000;
return seconds;
}
在上面代替year,month,date
我路过2011,10,1
我得到了
1317510000
但正确答案是
1317427200
任何有关这方面的帮助对我来说都非常有用。
方法Calendar.getTimeInMillis() http://docs.oracle.com/javase/6/docs/api/java/util/Calendar.html#getTimeInMillis%28%29 and Date.getTime() http://docs.oracle.com/javase/6/docs/api/java/util/Date.html#getTime%28%29两者都返回自 1970 年 1 月 1 日以来的毫秒数。
对于当前时间,您可以使用:
long seconds = System.currentTimeMillis() / 1000l;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)