【发布时间】:2012-01-05 23:34:23
【问题描述】:
我正在处理一个实时项目,自 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
任何有关这方面的帮助对我来说都非常有用。
【问题讨论】:
-
getTimeInMillis()已经从 Unix 时代(1970 年等)开始测量。如果您查看毫秒1,它应该为零(除非您遇到时区问题)。所以没必要拿差价
标签: java