2012-08-24 63 views
0

我在我的應用程序中使用鬧鐘日曆,但如果使用日曆,timeInMillis是錯誤的。
我告訴你一個例子:日曆返回錯誤時間

// Get Current Time 
Calendar calNow = Calendar.getInstance(); 
calNow.setTimeInMillis(System.currentTimeMillis()); 
calNow.add(Calendar.HOUR, calNow.get(Calendar.HOUR_OF_DAY)); 
calNow.add(Calendar.MINUTE, calNow.get(Calendar.MINUTE)); 
long now = calNow.getTimeInMillis(); 

now回報例如:1345848049917
now必須是相同的System.currentTimeMillis(),但它不是,system回報1345846849921

now在我的時區:25.08.2012 - 00:40:49
System.currentTimeMillis()是:25.08.2012 - 00:20:49

恰好20分鐘後,但爲什麼?

回答

3

我不太知道你想幹什麼,但這些行

calNow.add(Calendar.HOUR, calNow.get(Calendar.HOUR_OF_DAY)); 
calNow.add(Calendar.MINUTE, calNow.get(Calendar.MINUTE)); 

雙打一天的小時和分鐘,把00:20:4900:40:49